flink水位线传播及任务事件时间

背景

本文来讲解一下flink的水位线传播及对其对任务事件时间的影响

水位线

首先flink是通过从源头生成水位线记录的方式来实现水位线传播的,也就是说水位线是嵌入在正常的记录流中的特殊记录,携带者水位线的时间戳,以下我们就通过图片的方式来讲解下水位线是如何传播以及更新任务的事件时间的.

如上图所示,任务中的事件时间等于任务中收到的前置任务中的最小水位线时间,然后任务会把当前任务的事件时间通过广播的方式向下游传播.

总结

从水位线的更新我们可以知道它依赖于前置的每个任务周期性的推进对应分区的水位线时间,也就是如果某个分区的水位线时间一直不更新,那么任务的事件时间就会没法更新,这样也就导致一直没法触发时间相关算子任务的计算,从而导致该任务只能不停的缓冲其他分区的记录流,从而导致状态大小膨胀以及内存消耗的增加,甚至导致OOM的严重后果,所以所有分区的水位线必须有规律的递增,并且相互之间不能相差太大。

相关推荐
春风不会绿大地19 分钟前
IDEA编写flinkSQL(快速体验版本,--无需配置环境)
sql·flink
SunTecTec1 小时前
Flink Docker Application Mode 命令解析 - 修改命令以启用 Web UI
大数据·前端·docker·flink
喜欢猪猪1 小时前
系统架构师---基于规则的系统架构
大数据·elasticsearch·搜索引擎
2401_871290582 小时前
如何在idea中写spark程序
大数据·spark·intellij-idea
三块钱07942 小时前
【原创】从s3桶将对象导入ES建立索引,以便快速查找文件
大数据·elasticsearch·搜索引擎·s3
拓端研究室TRL4 小时前
PyMC+AI提示词贝叶斯项目反应IRT理论Rasch分析篮球比赛官方数据:球员能力与位置层级结构研究
大数据·人工智能·python·算法·机器学习
漂流瓶6666664 小时前
如何搭建spark yarn 模式的集群
大数据·spark·eclipse
啊喜拔牙5 小时前
如何搭建spark yarn模式的集群
大数据·分布式·spark
春风不会绿大地6 小时前
Flink+Hologres搭建实时数仓
大数据·flink
董可伦7 小时前
Flink HA 总结
大数据·flink