怎么理解flink的异步检查点机制

背景

flink的checkpoint监控页面那里有两个指标Sync Duration 和Async Duration,一个是开始进行同步checkpoint所需的时间,一个是异步checkpoint过程所需的时间,你是否也有过疑惑,是否只是同步过程中的时间才会阻塞正常的数据处理,而异步checkpoint的时间不会影响正常的数据处理流程?

问题追踪

这里我们只拿Aligned checkpoint 和FsBackEnd作为例子,我们知道当一个算子收到前置所有算子的checkpoint barrier后,就会开始进行checkpoint操作:

  1. checkpoint操作的过程的第一步是同步操作,也就是这一步使用的lock和数据处理过程使用的lock是同一个,同步checkpoint操作的过程中是会阻塞数据正常处理流程的,在同步处理的这一步骤中最主要进行的操作是对当前的状态进行快照操作,进行状态快照的过程只是拷贝当前状态的对象引用,那一定有人说,你仅仅拷贝对象的引用,那么当这个对应引用所指向的对象是可变的并且数据处理过程中改变了这个对象内容,那你之前快照的内容不就变了吗?其实是这样的,如果数据处理过程中改变了对象的内容,那么会生成一个新的对象应用,替换状态对象中持有的旧的对象引用,不过快照中的持有的还是旧的对象应用,而旧对象应用指向的对象不会发生改变
  2. checkpoint过程的第二步是把快照的数据拷贝到远程存储HDFS上,这一步由于涉及到的网络传输,所以可能耗时相当长的时间,不过数据处理过程和异步checkpoint的过程是并行的,不会影响到数据的处理。

结论

checkpoint的同步处理阶段会阻塞数据的正常处理流程,相当于这个算子在此期间是不能进行数据处理的,而checkpoint的异步处理阶段和算子的数据处理是并行进行的,不会影响到数据的正常处理流程

参考:

https://zhuanlan.zhihu.com/p/392556253

相关推荐
yuanxi20010 小时前
青海共和百万千瓦光伏光热项目并网发电:大客户销售如何用价值力抓住能源大单
大数据·职场和发展·能源·创业创新·学习方法
W***259212 小时前
2026深度解读:Work Agent长程任务的执行机制与落地能力
大数据·人工智能
卷毛迷你猪12 小时前
快速实验篇(B07 )Session 会话化与序列
大数据·hive·hadoop
卷毛迷你猪13 小时前
快速实验篇(B08)搜索词分析实战
大数据·hive·hadoop
IT研究室13 小时前
最新大数据毕业设计选题推荐-基于大数据的考研相关视频数据可视化分析-大数据-Spark-Hadoop-Bigdata
大数据·考研·课程设计
johnsong14 小时前
幽灵协议:当AI推荐死去的SaaS,编码Agent控制层正在形成
大数据·人工智能
蝶依斓(湖南)全案整装14 小时前
旧房改造整装内容写作框架:用户痛点与叙述结构
大数据
蝶依斓(湖南)全案整装15 小时前
整装行业长尾需求内容矩阵搭建方法:从五个维度拆解用户需求
大数据·人工智能·矩阵
回眸&啤酒鸭15 小时前
GLM 5.3 Flash 批量处理实战指南
大数据·人工智能
躺柒15 小时前
读数据架构知识体系指南13现代数据仓库
大数据·数据分析·数据湖·mdm·rdm