Flink中的窗口用于将无界数据流切割成有界块进行计算。下面编程教程网小编给大家简单介绍一下几种主要类型的窗口。
Flink窗口介绍:
滑动窗口:固定大小的窗口,按照固定的滑动间隔滑动。
DataStream windowedStream = inputStream.window(SlidingEventTimeWindows.of(Time.seconds(10), Time.seconds(5)));
滑动跨度窗口:按时间间隔生成窗口。
DataStream windowedStream = inputStream.window(SlidingEventTimeWindows.of(Time.seconds(10)));
会话窗口:按会话活跃时间生成窗口,窗口间有一定的不活跃期。
DataStream windowedStream = inputStream.window(EventTimeSessionWindows.withGap(Time.minutes(10)));
全局窗口:将整个数据流视为一个窗口。
DataStream windowedStream = inputStream.window(GlobalWindows.create());
这些窗口之间的主要区别是:
1、窗口大小:滑动窗口和滑动跨度窗口的大小可以配置,会话窗口的大小不确定。
2、生成规则:根据记录数生成滑动窗口,根据时间生成滑动跨度窗口,根据非活动时间生成会话窗口。
3、重叠:滑动窗口可以重叠,但会话窗口和全局窗口不能重叠。
4、使用场景:滑动窗口用于近期聚合,会话窗口用于用户行为分析,全局窗口用于整体统计。
织梦狗教程
本文标题为:Flink窗口有哪些类型介绍?


基础教程推荐
猜你喜欢
- javascript实现获取浏览器版本、操作系统类型 2023-12-02
- vue3.x keep-alive不生效 2023-10-08
- javascript异步处理工作机制详解 2023-12-20
- 图文解析AJAX的原理 2023-01-20
- Ajax 请求队列解决方案并结合elementUi做全局加载状态 2023-02-23
- AJAX实现文件上传功能报错Current request is not a multipart request详解 2023-02-23
- vue 使用$refs获取表单内容及v-model双向数据绑定 2023-10-08
- JS函数验证总结(方便js客户端输入验证) 2023-12-18
- 详解搭建一个vue-cli的移动端H5开发模板 2023-12-20
- 在vue项目中利用popstate处理页面返回的操作介绍 2024-02-12