• Flink故障恢复机制的核心,就是应用状态的一致性检查点(Checkpoint)
  • 有状态流应用的一致性检查点,就是在某个时间点的一份拷贝(一份快照),在这个时间点是所有任务都恰好处理完一个相同的输入数据的时间
    Flink容错机制
    此应用有一个source task,消费一个递增数的流,如1,2,3等等。流中的数据被分区到一个基数流,一个偶数流。在一个sum operator中,有两个task,分别用于累加基数与偶数。Source task 存储当前输入流的偏移量作为state。Sum task 将当前的累加和作为state并存储。上图中,在输入偏移量为5时,Flink做了一个检查点,此时两个task的累加和分别为6和9。
  • 在流的执行过程中,Flink会定时做Checkpoint,当程序出现故障时,Flink会以最近的检查点,一致性的恢复application的状态,并重新开始执行。具体步骤如下
    1. 首先,当遇到程序失败的宕机等情况时 如下图Flink容错机制
    1. Flink首先会重启应用
      Flink容错机制
    1. 然后从最近的Checkpoint中读取状态,将状态重置
      Flink容错机制
    1. 从检查点重新启动应用程序后,其内部状态与检查点完成时的状态完全相同,然后接着经行流数据处理
      Flink容错机制

相关文章:

  • 2021-12-21
  • 2021-08-17
  • 2022-01-20
  • 2021-08-21
  • 2022-12-23
  • 2021-12-19
  • 2021-08-19
  • 2021-07-17
猜你喜欢
  • 2022-01-05
  • 2022-01-10
  • 2021-12-25
  • 2022-12-23
  • 2021-11-16
  • 2021-06-08
相关资源
相似解决方案