我正在调查Apache Flink如何工作并尝试了解Flink中的时间窗口。
答案 0 :(得分:1)
文档概述了这一点:https://ci.apache.org/projects/flink/flink-docs-release-1.3/dev/windows.html
一个简单的TimeWindow实际上是一个Tumbling(事件/处理)TimeWindow和一个Sliding(事件/处理)TimeWindow是一个滑动窗口。
从文档中提供具体示例(参见插图链接):
翻滚窗口
翻滚窗口分配器将每个元素分配给a的窗口 指定的窗口大小。翻滚的窗户有固定的尺寸,但没有 交叠。例如,如果指定大小为的滚动窗口 5分钟后,将评估当前窗口并显示一个新窗口 每五分钟开始一次。
滑动窗口
滑动窗口分配器将元素分配给固定的窗口 长度。类似于翻滚的窗口分配器,大小的 窗口由窗口大小参数配置。额外的 窗口滑动参数控制滑动窗口的频率 开始。因此,如果滑动,滑动窗口可以重叠 小于窗口大小。在这种情况下,元素被分配给 多个窗口。
例如,您可以使用大小为10分钟的窗口进行滑动 5分钟。有了这个,你每隔5分钟就会得到一个包含的窗口 在过去10分钟内到达的事件。