首页 文章

有序流的Flink保证

提问于
浏览
0

根据我对Flink的一点经验,我注意到即使我们有订单到达订单,他们应该在分区后到达,订单也会丢失 . 这在这里讨论:Ordering of Records in Stream

所以我有3个问题可以扩展上面提到的问题:

  • 在我不清楚keyBy函数之后订单丢失的原因 . 为什么会这样?

  • 有没有办法确保即使在分区后事件的顺序?

  • 如果我们不创建KeyedStreams,那么每个并行运算符保证事件的顺序是什么?

1 回答

  • 0

    我想这里可能存在一些误解 . 我会尝试在这里重新说明一些事情:

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

相关问题