flink中支持多种窗口,包括:时间窗口,session窗口,统计窗口等等,能想到的基本都可以实现
时间窗口(Time Windows)
最简单常用的窗口形式是基于时间的窗口,flink支持三种种时间窗口:
第一个: 翻滚时间窗口(tumbling time window)
翻滚时间窗口的窗口是固定的,比如设定一个1分钟的时间窗口,该时间窗口将只计算当前1分钟内的数据,而不会管前1分钟或后1分钟的数据。
时间是对齐的,数据不会同时出现在2个窗口内,不会重叠

第二个:滑动时间窗口(sliding time window)
滑动窗口,顾名思义,该时间窗口是滑动的。所以,从概念上讲,这里有两个方面的概念需要理解:
窗口:需要定义窗口的大小
滑动:需要定义在窗口中滑动的大小,但理论上讲滑动的大小不能超过窗口大小
滑动窗口是固定窗口的更广义的一种形式,滑动窗口由固定的窗口长度和滑动间隔组成
窗口长度是固定的,可以有重叠的部分