flink的window和windowAll的区别

背景

在flink的窗口函数运用中,window和windowAll方法总是会引起混淆,特别是结合上GlobalWindow的组合时,更是如此,本文就来梳理下他们的区别和常见用法

window和windowAll的区别

window是KeyStream数据流的方法,其并行度是任意的,也就是最大可以和分组key的数量相同

windowAll是DataStream数据流的方法,其并行度只能是1,也就是所有的元素都会被聚合到一个算子任务上,性能极差

GlobalWindows.create()是一个全局的窗口分配器,

它的作用和TimeWindow或CountWindow一样,都是对元素进行窗口分配,不同点在于GlobalWindows把分区内所有的元素分配到同一个窗口,并且不会触发计算,

而TimeWindow或CountWindow会基于时间或者元素个数对元素进行窗口的分配,并且满足条件就会触发计算

以下是示意图:

GlobalWindows+KeyedStream常见用法如下:

WindowedStream<Integer, Integer, GlobalWindow> keyedWindowedStream = keyedStream.window(GlobalWindows.create()).trigger(PurgingTrigger.of(CountTrigger.of(10)));

GlobalWindows+DataStream常见用法如下:

AllWindowedStream<Integer, GlobalWindow> allWindowedStream = dataStream.windowAll(GlobalWindows.create()).trigger(PurgingTrigger.of(CountTrigger.of(10)));

相关推荐
檐下翻书17312 分钟前
HR人力资源管理流程图在线绘制方法
大数据·人工智能·架构·流程图·论文笔记
无忧智库43 分钟前
一网统飞:城市级低空空域精细化管理与服务平台建设方案深度解析(WORD)
大数据·网络·人工智能
木头程序员1 小时前
持续学习(Continual/Lifelong Learning)综述
大数据·人工智能·深度学习·机器学习
Hello.Reader1 小时前
Apache Cassandra Connector:Flink 与宽列存储的高吞吐协作
大数据·flink·apache
中國龍在廣州1 小时前
35天,成了AI 模型的斩杀线
大数据·人工智能·深度学习·算法·机器人
Gofarlic_oms19 小时前
Windchill用户登录与模块访问失败问题排查与许可证诊断
大数据·运维·网络·数据库·人工智能
Zoey的笔记本10 小时前
2026告别僵化工作流:支持自定义字段的看板工具选型与部署指南
大数据·前端·数据库
lingling00911 小时前
2026 年 BI 发展新趋势:AI 功能如何让数据分析工具 “思考” 和 “对话”?
大数据·人工智能·数据分析
鹧鸪云光伏11 小时前
光伏项目多,如何高效管理?
大数据·人工智能·光伏
Acrel1870210670611 小时前
浅谈电气防火限流保护器设计在消防安全中的应用价值
大数据·网络