首页 > 其他分享 >Flink窗口window

Flink窗口window

时间:2022-11-06 22:34:44浏览次数:30  
标签:窗口 定义 Flink 计数 window 滑动 数据

  • 窗口:
    一般真实的流都是无界的,窗口可以把无界的流进行切分,得到一个有界流。它会将数据分发到有限大小的桶内进行分析。
    
  • window类型:
    时间窗口 time window:滚动时间窗口,滑动时间窗口,会话窗口。
    计数窗口 count window:滚动计数窗口,滑动计数窗口。
    滚动窗口:tumbling window:将数据依据固定大小的窗口长度对数据进行切分。时间对齐,窗口长度固定,没有重叠。
    滑动窗口:sliding window:滑动窗口是固定窗口的更广义的一种形式,滑动窗口由固定的窗口长度和滑动间隔组成。窗口长度固定,可以有重叠。
    会话窗口:session window:由一系列事件组合一个指定时间长度的timeout间隙组成,也就是一段时间没有接到新数据就会生成新的窗口。特点:时间无对齐。
    
  • window API:
    窗口分配器:window()方法
    我们可以用.window()来定义一个窗口,然后基于这个window去做一些聚合操作或者其它处理操作。注意window()方法必须在keyby方法之后才能用。
    flink提供了更加简单的.timeWindow()和.countWindow(),用于定义时间窗口和计数窗口。
    DataStream<Tuple2<String,Double>> minTempPerWindowStream = dataStream
                                                                         .map(new MyMapper())
                                                                         .keyby(data -> data.f0)
                                                                         .timeWindow( Time.seconds(15) )
                                                                         .minBy(1);
    
  • 窗口函数(window function):
    window function定义了窗口中要对收集的数据所做的计算操作。
    可以分为两类:增量聚合函数,increment aggregation functions,每条数据到来就进行计算,保持一个简单的状态。
                              如reduceFunction,aggregateFunction
                全窗口函数,full windowFunctions,先把窗口所有数据收集起来,等到计算的时候会遍历所有数据。
                              如processWindowFunction,WindowFunction
            
    
  • 其他可选API:
    .trigger()--触发器,定义窗口什么时候关闭,触发计算并输出结果。
    .evictor()--移除器,定义移除某些数据的逻辑。
    .allowedLateness(),允许处理迟到的数据。
    .sideOutputLateData(),将迟到的数据放入侧输出流。
    .getSideOutput(),获取侧输出流。
    

标签:窗口,定义,Flink,计数,window,滑动,数据
From: https://www.cnblogs.com/shaokai7878/p/16864417.html

相关文章

  • PowerShell提示 ”无法加载文件 WindowsPowerShell\profile.ps1,因为在此系统上禁止运
    win+S打开搜索框,=>打开PowerShell输入命令:set-executionpolicyremotesigned并输入Y确认......
  • Windows安装Mongodb
    Windows安装Mongodb官方文档:https://www.mongodb.com/docs/manual/tutorial/install-mongodb-on-windows-unattended/目前MongoDB官网已经不支持32位安装包的下载,由......
  • windows下面固定本地ip
    我们在进行测试的时候,需要固定本地ip地址,不然那些端口隔几天自己就会变一下,对调试不利。下面直接说方法:第一步:查看目前的ip和网关,待会会用到这里的网关;这里可以看到,我的......
  • 华为主题开发分享-在windows 11操作系统上识别不到P50等华为手机的解决方案
    在开发华为手机主题时,我们都是采用Themstudio进行实际测试,无穹,官方工具的“同步”功能实在是好用。一键就能将主题推到手机上进行测试,高效方便。但对于有的老款手机比如......
  • 制作包含最新更新的Windows 10 LTSC 2021 ISO
    介绍在制作桌面云windows模板的时候,一般需要安装最新的更新。更新安装过程非常耗时,并且安装更新会导致桌面模板的磁盘空间膨胀。制作出的模板会占用很大的磁盘空间。如果......
  • 一些windows快捷键
    Ctrl+C:复制Ctrl+V:粘贴Ctrl+X:剪切Ctrl+Z:撤销Ctrl+A:全选Ctrl+S:保存shirt+delete:永久删除Ctrl+shirt+ESC:任务管理器Alt+F4:关闭窗口Alt......
  • Windows抓屏(1)GDI-bitblt
    1GDI-bitblt方法BitBlt用于从原设备中复制位图到目标设备,弊端,做投屏抓屏时候可能会比较慢,帧率比较低头文件:(代码来源于网络,目前无法溯源)#pragmaonce#include<wind......
  • windows11安装机器学习Anaconda环境
    Anaconda是一个开源的Python发行版本,是一个安装、管理python相关包的软件,还自带python、JupyterNotebook、Spyder,有管理包的conda工具,非常有用。安装步骤:1.Anaconda下......
  • macOS 远程桌面windows方法
    1.利用微软官方的软件:https://learn.microsoft.com/en-us/windows-server/remote/remote-desktop-services/clients/remote-desktop-mac 2. ......
  • window2016 无法安装 net3.5 的解决办法
    WindowsPowerShell版权所有(C)2016MicrosoftCorporation。保留所有权利。PSC:\Users\Administrator>dism.exe/online/enable-feature/featurename:NetFX3/Sour......