Flink容错机制(CheckPoint)

Checkpoint机制是Flink可靠性的基石,可以保证Flink集群在某个算子因为某些原因(如异常退出)出现故障时,能够将整个应用流图的状态恢复到故障之前的某一个状态,保证应用流图状态的一致性。Flink的Checkpoint机制原理来自"Chandy-Lamport algorithm"算法。
每个需要CheckPoint的应用在启动时,Flink的JobManager为其创建一个CheckpointCoordinator(检查点协调器),CheckpointCoordinator全权负责本应用的快照制作。

  • 1.CheckpointCoordinator(检查点协调器)周期性的向流应用的所有source算子发送barrier(屏障)。
  • 2.当某个source算子收到一个barrier时,便暂停数据处理过程,然后将自己的当前状态制作成快照,并保存到执行的持久化存储中,最后向CheckpointCoordinatot报告自己快照制作情况,同时向自身所有下游算子广播该barrier,恢复数据处理。
  • 3.下游算子收到barrier之后,会暂停自己的数据处理,然后将自身的相关状态制作成快照,并保存到指定的持久化存储中,最后向CheckpointCoordinator报告自身快照情况,同时向自身所有下游算子广播该barrier,恢复数据处理。
  • 4.每个算子按照步骤3不断制作快照并向下游广播,直到最后barrier传递到sink算子,快照制作完成。
  • 5.当CheckpointCorrdinator收到所有算子的报告之后,认为该周期的快照制作成功;否则,如果规定时间内没有收到算子的报告,则认为本周期快照制作失败。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值