一天的 Apache Beam 窗口

Apache Beam windowing for day

我想在 apache beam 上使用 windows 函数按天提取数据。 我在 python 上工作并使用 FixedWindow 来捕获数据。

我遇到了数据一致性问题,因为这段代码是按计数持续时间戳工作的,

beam.WindowInto(window.FixedWindows(1440*60)) # minute of whole day * second

这意味着如果我在 6 月 3 日开始 Beam 管道 3:00PM,它将在 6 月 4 日结束 3:00PM。

我想要类似的东西, 如果我必须在 6 月 3 日 3:00PM 开始管道,时间到了 6 月 4 日 0:00AM,
windows 函数应该开始新的捕获,在 June-3 11:59:59 PM

之后

有人知道吗?或者 windows 函数不支持此类工作。

windows 不是基于管道的开始时间,而是基于 Unix 纪元。

在您的情况下,如果您希望 windows 对齐天数,您可以使用 CalendarWindows。您只需指定计算天数的时区。