数据流作业的初始状态

Initial state for a dataflow job

我想弄清楚我们如何 "seed" 我们的一些流式数据流作业的 window 状态。场景是我们有一个论坛消息流,我们想一直为每个主题发出 运行ning 条消息,所以我们有一个带有全局 window 的流式数据流作业和触发发出每次都有一个主题的记录进来。到目前为止一切都很好。但是在流源之前,我们有一个大文件,我们想处理它以获得我们的历史计数,而且,因为主题永远存在,我们需要历史计数来通知流源的输出,所以我们输入'我们需要相同的逻辑来 运行 遍历文件,然后在文件耗尽时开始 运行 遍历流源,同时保持 window 状态。

目前的想法:

编辑:最新的选择,也是我们要做的,是编写计算作业,这样事件到达的顺序根本无关紧要,所以我们只需将存档推送到pub/sub 主题,一切都会奏效。这在这种情况下有效,但显然它会影响下游消费者(需要支持更新或撤回)所以我很想知道人们还有哪些其他解决方案来播种他们的 window 状态。

您可以按照要点 2 中的建议进行操作 --- 运行 两个管道(在同一主管道中),第一个从大文件填充 pubsub 主题。这类似于 StreamingWordExtract 示例所做的。