窗口创建
窗口不会预先创建好,而是由数据驱动创建。当第一个应该属于这个窗口的数据元素到达时,就会创建对应的窗口。

窗口计算
对于不同的窗口类型,触发计算的条件也会不同。例如,一个滚动事件时间窗口,应该在水位线到达窗口结束时间的时候触发计算;而一个计数窗口,会在窗口中元素数量达到定义大小时触发计算。

窗口销毁
一般情况下,当时间达到了结束点,就会直接触发计算、输出结果,进而清除状态、销毁窗口。 这时窗口的销毁可以认为和触发计算是同一时刻。这里需要注意,Flink 中只对时间窗口(TimeWindow)有销毁机制;由于计数窗口(CountWindow)是基于全局窗口(GlobalWindow)实现的,而全局窗口不会清除状态,所以就不会被销毁。



2.2.4 基于窗口机制的流计算
算子模型
Flink中算子分为数据源算子(source)、转换算子(transform)、输出算子(sink),下图为算子模型示意图。数据源算子负责接收运算数据,数据源支持多种:文本、MQ等等;


奔放的炒粉
1 声望1 粉丝