project/flink/窗口.md

1.2 KiB

窗口

  1. flink中窗口就是将无界流变为有界流
  2. 支持基于时间分流未分流和元素个数

12种窗口

触发计算上一个窗口的数据

新窗口接收数据

滚动窗口

滑动窗口

session窗口

增量聚和函数

reduce

aggregate

全量聚和函数(排序)

process

Flink中支持三种时间语义

  1. Process Time 当前元素进入窗口的系统时间(算子处理时间),默认时间语义
  2. Event Time 事件时间,当前元素在数据源中产生的时间(数据自定义时间)
  3. Ingestion time 摄取时间,元素进入flink source 的系统时间(元素进入source时间)

左闭右开

打水印

  1. 周期性生成水印
  2. 间歇性生成水印

添加水印后,只有水印能触发计算

  1. window 触发 watermark>=window end
  2. window触发 eventime>=window end

AllowedLateness

延时多长时间能够再次执行上次窗口.

CacheFile

定时器定时拉取文件

readfile

MateStateDescription 管理员在修改配置文件的时候,需要将更改的信息同步值kafka配置到topic中,然后将kafka的配置流信息变成广播流,广播到业务流的各个线程中.