天天看点

Flink入门(八) checkpoint与savepoint区别

checkpoint的生命周期由Flink管理,即Flink创建,拥有和发布Checkpoint - 无需用户交互。

一般30s触发一次,如果在控制台cancel任务,checkpoint都会被清空。

默认checkpoint功能是disabled的。

savepoint是用户手动维护的,适合场景大的窗口或则是状态任务,不需要让每次启动要重复计算好多数据。

如果需要修改代码、或者修改配置、增大并行度,可以使用savepoint

而且可以不同版本的flink任务迁移。

savepoint保存命令

flink savepoint b9a0bd873d0546e9d4511347c8031b74 /tmp/flink/savepoints/  
           

举个例子,比如flink消费kafka的topic名为test,

checkpoint负责offset提交,现在是10点27,已经提交offset是127,内存中数据消费位置offset是130。

如果从9点的savepoint重启,kafka消息会从9点的offset的51重新开始消费。

如果支持从checkpoint重启话,会从offest 127开始消费kafka。

继续阅读