Bootstrap

Flink四大基石之Window

为什么要用WIndow 

在流处理应用中,数据是连续不断的,有时我们需要做一些聚合类的处理,例如:在过去的1分钟内有多少用户点击了我们的网页。

在这种情况下,我们必须定义一个窗口(window),用来收集最近1分钟内的数据,并对这个窗口内的数据进行计算。

 Window的类型

按照时间划分边界的就称为时间窗口:比如每隔1分钟,统计这1分钟内通过汽车的数量

按照数量划分边界,这样的称为计数窗口:如统计100辆通过的车里面有多少宝马品牌,

时间窗口

滚动窗口- TumblingWindow

每隔1分钟,统计这1分钟内通过汽车的数量,窗口长度是1分钟,时间间隔是1分钟,所以这样的窗口就是滚动窗口

 滑动窗口– SlidingWindow

每隔1分钟,统计前面2分钟内通过的车辆数

计数窗口

滚动窗口- TumblingWindow

每通过50辆车,统计前面通过的50辆车的品牌占比,对于这个需求可以看出,窗口长度是50辆车,每隔50辆车统计一次

滑动窗口– SlidingWindow

每通过100辆车,统计前面通过的50辆车的品牌占比

对于这个需求可以看出,窗口长度是50辆车,但是每隔100辆车统计一次,对于这样的窗口,我们称之为滑动窗口

 

 

;