1.简介
流式处理中,数据连续不断的产生,flink使用窗口机制将无限的数据有限化,比如每5s计算一次数据中最大值、或者每5分钟获取过去1小时的热门商品。
2.窗口详解
窗口既可以是时间驱动窗口(如每5s计算一次最大值),也可以是是数据驱动(如每100个数据中的最大值)。下面对每种窗口进行举例。
2.1 滚动时间窗口(无重叠)
2.2 滑动时间窗口
window size为5s,slide size为1s。
2.3 滚动计数窗口
2.4 滑动计数窗口
2.5 会话窗口
2.6 ***自动义窗口***
flink的窗口机制非常灵活,可以根据需要自定义窗口,下节详述
3. Window API
根据以上api,可以自定义窗口如下:
4.参考文章(非常优秀!!!)
http://wuchong.me/blog/2016/05/25/flink-internals-window-mechanism/