Apache flink Flink中保存点和检查点的区别
我知道stackoverflow上也有类似的问题,但在调查了其中几个问题后,我知道了Apache flink Flink中保存点和检查点的区别,apache-flink,Apache Flink,我知道stackoverflow上也有类似的问题,但在调查了其中几个问题后,我知道了 保存点手动触发,而检查点被触发 自动地 它们使用不同的存储格式 但这些并不是令人困惑的地方,我不知道什么时候该用一个,什么时候该用另一个 考虑以下两种情况: 如果由于某种原因(例如错误修复或意外崩溃)需要关闭或重新启动整个应用程序,那么我必须使用savepoint来恢复整个应用程序 我认为,checkpoint仅在Flink内部用于应用程序运行时的容错,也就是说,应用程序本身正在运行,但任务或其他事情可能会失败
保存点
手动触发,而检查点
被触发
自动地savepoint
来恢复整个应用程序李>
checkpoint
仅在Flink内部用于应用程序运行时的容错,也就是说,应用程序本身正在运行,但任务或其他事情可能会失败,也就是说,Flink将使用checkpoint
进行状态恢复李>
外部化检查点
,我认为这与保存点
在功能上是一样的,也就是说,外部化检查点
也可以用于从重新启动的应用程序恢复有关更多信息,请查看此博客文章:。感谢@bupt ljy提供的精彩答案。如果我的应用程序可能意外崩溃,因此我将无法及时获得手动准备保存点的机会,在这种情况下,看起来我别无选择,只能使用检查点?(正如您所说,可能会有一些延迟,因为检查点之间存在间隔).@bupt ljy,另一个相关但更直接的问题,检查点用于容错,
用于容错
是否包括整个应用程序意外崩溃的场景?@Tom很抱歉这么晚才回答。对于第一个问题,如果您的应用程序意外崩溃(已重试多次),外部化检查点是恢复它的唯一方法。对于第二个问题,它包括您启用外部化检查点后提到的情况,否则它只能处理一些需要重试的情况,如临时网络问题。