Flink 增量 Checkpoint ,容错恢复后,随着时间的推移,之前的 Checkpoint -问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Flink 增量 Checkpoint ,容错恢复后,随着时间的推移,之前的 Checkpoint

2021-12-02 17:53:19 317 1

大家好,我现在有个任务,状态比较大,使用的增量的 Checkpoint,Flink 1.6 版本,默认的 Checkpoint 保留数为1,

我看了一下源码,发现当完成的 Checkpoint 数大于 state.checkpoints.num-retained的数值时,会对之前的完成的

Checkpoint 状态做清理。

当时我早上八点40多任务 Checkpoint 成功,当时的 chk-id 为

94040,然后到下午15点之间,Checkpoint都是超时失败的,然后15点容错恢复,从

chk-94040 恢复(八点40的状态),最新的 chk-id 为 94080。94080,94081,94082都是成功的,后面接着任务

Checkpoint 超时失败。

但此时 早上八点40多的任务的状态(也就是94040)还是没有清理,但是 state.checkpoints.num-retained又为1,完成的

Checkpoint 数大于1,所以我的理解,应该会清理掉 94040(早上八点40的状态),但是实际没有清理,状态文件还在 HDFS

上面。这是为什么呢,难道说状态容错恢复,不会清理之前的状态吗?

希望有大佬能帮我解惑,非常感谢*来自志愿者整理的flink邮件归档

取消 提交回答
全部回答(1)
  • EXCEED
    2021-12-02 18:01:57

    如果你从chk-94040 进行checkpoint恢复的话,这个checkpoint是不会被删除清理的,这个行为是by design的。原因是因为从checkpoint resume在行为上被认为从Savepoint resume行为是一致的,也复用了一套代码 [1],Savepoint的生命周期由用户把控,Flink框架自行不会去删除。

    因此,加载的checkpoint被赋予了savepoint的property [2]。 这个CheckpointProperties#SAVEPOINT 里面的 discardSubsumed 属性是false,也就是当新的checkpoint完成时,在subsume阶段这个旧的checkpoint不会被discard掉,所以你restored的chk-94040是一直保留的。

    希望这些解释能解答你的困惑

    [1] https://github.com/apache/flink/blob/ee3101a075f681501fbc8c7cc4119476d497e5f3/flink-runtime/src/main/java/org/apache/flink/runtime/checkpoint/CheckpointCoordinator.java#L1141

    [2] https://github.com/apache/flink/blob/ee3101a075f681501fbc8c7cc4119476d497e5f3/flink-runtime/src/main/java/org/apache/flink/runtime/checkpoint/Checkpoints.java#L214*来自志愿者整理的FLINK邮件归档

    0 0
相关问答

1

回答

Flink 中的时间一共有哪几类?

2021-12-08 15:56:01 173浏览量 回答数 1

1

回答

Flink 中的时间有哪几类?

2021-12-07 19:45:50 95浏览量 回答数 1

1

回答

Flink CDC 在生产环境项目背景是怎么样的?

2022-01-19 16:34:13 1338浏览量 回答数 1

1

回答

Flink CDC项目运行环境与现状是什么样的?

2022-01-19 16:35:29 1340浏览量 回答数 1

1

回答

《Flink CDC:新一代数据集成框架》这本书可以在哪里下载?

2022-01-19 15:14:52 3947浏览量 回答数 1

1

回答

Flink CDC 区别于其他数据集成框架的一个核心点是什么?

2022-01-19 16:18:49 505浏览量 回答数 1

1

回答

Flink CDC 的出现为数据入湖架构提供了哪些新思路?

2022-01-19 16:16:53 495浏览量 回答数 1

1

回答

Flink CDC 数据入湖的挑战有哪些?

2022-01-19 16:19:54 440浏览量 回答数 1

1

回答

Flink CDC 2.0的整体流程是怎么样的?

2022-01-19 15:33:19 2549浏览量 回答数 1

1

回答

Flink SQL中的CDC格式是什么?

2021-12-08 21:55:34 210浏览量 回答数 1
0
文章
330
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载