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

背景

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

水位线

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

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

总结

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

相关推荐
bxlj_jcj19 分钟前
Flink DataStream API详解(二)
大数据·flink
涛思数据(TDengine)42 分钟前
时序数据库 TDengine × SSRS:专为工业、能源场景打造的报表解决方案
大数据·数据库·物联网·时序数据库·tdengine
isNotNullX1 小时前
实时数仓和离线数仓还分不清楚?看完就懂了
大数据·数据库·数据仓库·人工智能·数据分析
潮湿的心情1 小时前
亚洲牧原:活跃行业交流,延伸公益版图,市场拓展再结硕果
大数据·人工智能
落雪小轩韩1 小时前
Git 常用操作与注意事项全攻略
大数据·git
winds~1 小时前
【Git】git的回退功能
大数据·git·elasticsearch
熊猫钓鱼>_>2 小时前
Hadoop 用户入门指南:驾驭大数据的力量
大数据·hadoop·分布式
Leo.yuan3 小时前
数据分析师如何构建自己的底层逻辑?
大数据·数据仓库·人工智能·数据挖掘·数据分析
Aurora_NeAr4 小时前
Apache Iceberg数据湖高级特性及性能调优
大数据·后端
SoFlu软件机器人4 小时前
飞算科技正在撬动各行业数字化转型的深层变革
大数据·科技