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)));

相关推荐
花间相见9 分钟前
【AI私人家庭医生day01】—— 项目介绍
大数据·linux·人工智能·python·flask·conda·ai编程
renhongxia112 分钟前
人机智能体合作:承诺理论考虑
大数据·人工智能·深度学习·语言模型·自然语言处理·transformer
工頁光軍14 分钟前
论文:面向长期存续的数字社会型智能体矩阵架构设计与演进研究
大数据·人工智能
倒流时光三十年20 分钟前
Elasticsearch SearchRequest 构建备忘录
大数据·elasticsearch
llilian_1627 分钟前
国产铷原子钟 铷频标挑选指南 铷原子频标 国产铷钟
大数据·网络·功能测试·单片机·嵌入式硬件·测试工具
智慧景区与市集主理人30 分钟前
巨有科技:文旅二消的增收密码,数智化让“一次游览”变“多次消费”
大数据·人工智能·科技
cy_cy00232 分钟前
解析数字科技展厅的多元展示手段
大数据·科技·人机交互·交互·软件构建
听你说321 小时前
智慧照明赋能城市升级|中节能晶和科技EMC模式破解路灯节能改造长效难题
大数据·人工智能·科技
KKKlucifer1 小时前
混合云纳管能力:国内堡垒机适配多云与异构资源的技术方案
大数据·网络·分类
财迅通Ai1 小时前
天立国际控股:AI赋能再造新增长 中期净利大增21%
大数据·人工智能·天立国际控股