有序流的 Flink 保证



根据我对 Flink 的一点经验,我注意到即使我们有事件到达订单,它们也应该在分区后到达订单丢失。这里对此进行了讨论:流中记录的排序

所以我有3个问题可以扩展上述问题:

  1. 在 keyBy 函数之后订单丢失的原因对我来说仍然不清楚。为什么会这样?

  2. 有没有办法即使在分区后也能确保事件的顺序?

  3. 如果我们不创建 KeyedStreams,是否保证每个并行运算符的事件顺序?

我认为这里可能存在一些误解。我将尝试在这里重新澄清一些事情:

对于从具有相同键的同一运算符发出的元素,将保留元素的顺序。但是,在分区后的接收端,如果您使用接收的相同键来考虑所有记录,则没有任何严格的排序,这仅仅是因为保证每个并行运算符的排序。

相关内容

  • 没有找到相关文章

最新更新