如何定期触发窗口?

时间:2016-11-08 03:29:30

标签: google-cloud-dataflow

我想在每M分钟处理最后的N小时数据。数据来自具有各种延迟的pubsub,但由于时间偏差或数据滞后,我不想延迟窗口触发。也就是说,我只想处理触发时可用的数据,并希望根据墙上时间触发(但每个窗口应包括基于数据事件时间的[触发时间 - M小时,触发时间]之间的数据。)< / p>

我试图使用SlidingWindows,但是触发是基于事件时间的,并且由于数据滞后似乎会延迟。

这样做的最佳方式是什么?

谢谢,

1 个答案:

答案 0 :(得分:1)

您应该在FixedWindows中使用AfterProcessingTime.pastFirstElementInPane().plusDelayOf(...)触发器。这将与您描述的完全一致。