flink 从savepoint、checkpoint中恢复数据


前言

提示:flink checkpoint重启:

  flink作业因为故障导致restart strategy失败或升级flink版本重新发布任务,这时就需要从最近的checkpoint恢复。一般而言有两种方案,第一种方案是开启checkpoint且任务取消时不删除checkpoint(调整参数execution.checkpointing.externalized-checkpoint-retention),第二种方案是定时触发savepoint(编写代码调用flink rest api)。

一、savepoint是什么?

   checkpoint的生命周期由flink来管理,flink负责checkpoint的创建、维护和释放,过程中没有与用户交互。与checkpoint不同,savepoint则由用户来创建、维护和删除的,savepoint是事先规划好的、手动备份并用于恢复。
  Savepoint 由两部分组成:稳定存储(例如 HDFS…) 上包含二进制文件的目录(通常很大),和元数据文件(相对较小)。 稳定存储上的文件表示作业执行状态的数据镜像。 Savepoint 的元数据文件以(相对路径)的形式包含(主要)指向作为 Savepoint 一部分的稳定存储上的所有文件的指针。

二、如何从savepoint/checkpoint中恢复数据

  savepoint/checkpoint恢复逻辑是一致的,即保存一份快照数据,重启作业时从快照数据重启

1.flink sql流作业

从kafka消费数据写入hive分区表中,采用的flink on yarn模式

CREATE TABLE kafka_flinkSqlTest(
  f1 STRING,
  f2 STRING
) WITH (
  'connector' = 'kafka'
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

但行益事莫问前程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值