概念
窗口类型
按照驱动类型分类
时间窗口(time window)
计数窗口(count window)
按照窗口分配数据的规则分类
滚动窗口(tumbling window)
滑动窗口(sliding window)
会话窗口(session window)
全局窗口(global window)
窗口API实现
指定窗口分配器
指定窗口函数
类型流转图
窗口函数
规约函数(reduce)
输入和输出类型相同
聚合函数(AggregateFunction)
第一条数据来时,创建窗口,创建累加器
增量聚合,来一条,就会调一次add方法
窗口触发计算时调用getResult
输入、累加器、输出类型可以不一致
全窗口函数(full window functions)
提供各种上下文信息
增量结合全量窗口使用
MyAgg的输出,给到MyProcess函数当输入
触发器(Trigger)
一般窗口划分中,已经写默认的触发器和移除器了(如上图的CountTrigger)。
processingTimerTrigger举例(其中一种,上面的CountTrigger也是一种)
移除器(Evictor)
小小总结
切记:窗口是等数据来的时候,现创建的。