如何处理Apache光束的非窗口管道中的无序事件或延迟事件

时间:2018-10-08 16:43:08

标签: apache-beam flink-streaming

我的管道使用情况更像是滚动更新程序。它从Kafka开始,获取消息,并不断更新更新程序,最后从更新程序生成0或多个决策事件。本文更像是有状态的ParDo,https://beam.apache.org/blog/2017/02/13/stateful-processing.html

kafka => [消息] =>有状态的pardo => [决策决定]

在这种情况下,消息的顺序非常重要,每个消息都有自己的序列号。我们必须以正确的顺序向更新程序提供消息。

我想使用水印机制来确保馈入有状态ParDo的消息顺序正确。假设我们可以使用1分钟作为水印容限,因此整个管道将获得1分钟的延迟,但是apap光束将处理乱序情况。

我试图对此进行编码,但是apache beam的每个示例都结合了加窗和水印触发器。实际上,我认为用例不需要窗口,这只是有状态的ParDo。

关于如何在apache梁上设计管线的任何想法?

0 个答案:

没有答案