(1)什么是checkpoint
checkpoint是一种分布式快照,它在某个时刻,对一个flink任务的所有作业做一个快照,并将快照存储下来,这样在任务进行故障恢复的时候,就会从故障前最近一个检查点的状态恢复,从而保证数据的一致性。
(2)什么是savepoint
savepoint是基于检查点机制创建的作业执行状态的全局镜像,可用于Flink的重启、停止及升级等。它由两部分构成,一是在稳定存储中(如hdfs、S3等)保存了二进制文件的目录,二是元数据文件。这些文件表示了作业执行状态的镜像,其中元数据文件主要保存了以绝对路径表示的指针。
(3)checkpoint和savepoint的区别
checkpoint | savepoint | |
触发方式 | 自动触发 | 手动触发 |
功能 | 任务发生异常时自动恢复数据 | 版本升级、代码修改、参数调整等 |
特点 | 轻量级,作业关闭默认自动删除 | 重量级,数据持久化,除非用户手动删除 |