Flink on zeppelin从checkpoint&savepoint自动恢复任务​

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 在上一篇的文章中介绍了Flink on zeppelin怎么配置checkpoint,并且从指定的checkpoint恢复任务,但是这个过程还是相对复杂,对用户来说不是很友好,在最新的版本中,zeppelin支持了自动从checkpoint&savepoint恢复任务,只需要添加几个参数即可,下面就来介绍一下如何使用.

在上一篇的文章中介绍了Flink on zeppelin怎么配置checkpoint,并且从指定的checkpoint恢复任务,但是这个过程还是相对复杂,对用户来说不是很友好,在最新的版本中,zeppelin支持了自动从checkpoint&savepoint恢复任务,只需要添加几个参数即可,下面就来介绍一下如何使用.


1.checkpoint自动恢复


1.1 指定checkpoint恢复



先启动一个简单的任务,点击右上角的Flink Job 看下Flink的web ui 任务的checkpoint情况.



可以看到checkpoint已经完成了3次了,现在把任务停掉,从checkpoint恢复任务.



上一篇文章说的 execution.savepoint.path 这个参数也可以直接设置到 paragraph 里面,这样不同的任务可以设置从不同的checkpoint启动.下面的 sum 结果不是从0开始的 是接着上一次的结果计算的,说明从checkpoint启动成功了.再到 UI 上面看一下



可以看到任务是从上一次的checkpoint恢复的.


1.2 自动从最近的checkpoint恢复

如果不想设置   想直接启动的时候就从最近一次成功的checkpoint恢复,设置一下 resumeFromLatestCheckpoint=true 这个参数就可以了.



zeppelin会定期的通过Flink的restful api 去获取checkpoint的信息,并把最近一次成功的保存在 note 里面 这样在下次启动的时候就能直接从保存的 checkpoint 路径启动任务,但是如果你设置保留了多个 checkpoint,不想从最近的启动,这个时候就不能用这种自动启动了,需要用上面那个参数去指定你想要恢复的checkpoint路径即可.


2.savepoint自动恢复

savepoint不像checkpoint那样定期的自动触发,它是需要我们手动触发的,在用户cancel job的时候才去做savepoint. 正常是需要用下面的命令触发的.然后启动的时候指定savepoint的路径启动.


flink cancel -s jobid -yid appid


现在在zeppelin里面只需要在 Paragraph 里面配置 savepointDir 参数就可以了,取消任务的时候会自动触发savepoint,保存到指定的目录里面. 然后重启的时候需要设置resumeFromSavepoint = true 这个参数,就可以自动从savepoint恢复任务了. 下面演示一下这个过程.



先把任务运行起来,然后等任务做了几次checkpoint后把任务停掉,然后添加 resumeFromSavepoint = true 参数直接启动任务就可以了.




任务也是可以正常启动的,不管是从checkpoint还是savepoint都变的非常简便.


总结:


自动从checkpoint&savepoint恢复任务其实是一个必要的需求,zeppelin已经帮我们做了这个功能,这样恢复任务就变的非常简单,配置几个参数就可以直接启动任务了.

相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
26天前
|
容灾 流计算
美团 Flink 大作业部署问题之 Checkpoint 跨机房副本的制作能力如何实现
美团 Flink 大作业部署问题之 Checkpoint 跨机房副本的制作能力如何实现
|
22天前
|
资源调度 Java Scala
实时计算 Flink版产品使用问题之如何实现ZooKeeper抖动导致任务失败时,能从最近的检查点重新启动任务
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
22天前
|
关系型数据库 MySQL 数据处理
实时计算 Flink版产品使用问题之mini-cluster模式下,怎么指定checkpoint的时间间隔
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
22天前
|
Oracle 关系型数据库 MySQL
实时计算 Flink版产品使用问题之如何从savepoint重新启动作业
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
26天前
|
存储 监控 Serverless
Serverless 应用的监控与调试问题之Flink对于Checkpoint Barrier流动缓慢的问题要如何解决
Serverless 应用的监控与调试问题之Flink对于Checkpoint Barrier流动缓慢的问题要如何解决
|
26天前
|
缓存 流计算
美团 Flink 大作业部署问题之根据已存在的 Checkpoint 副本进行增量的副本制作如何实现
美团 Flink 大作业部署问题之根据已存在的 Checkpoint 副本进行增量的副本制作如何实现
|
26天前
|
分布式计算 流计算
美团 Flink 大作业部署问题之Checkpoint Replicate Service 跨 HDFS 集群的副本制作是如何实现的
美团 Flink 大作业部署问题之Checkpoint Replicate Service 跨 HDFS 集群的副本制作是如何实现的
|
26天前
|
流计算
美团 Flink 大作业部署问题之新启动作业的 Checkpoint 跨作业文件引用的问题要如何避免
美团 Flink 大作业部署问题之新启动作业的 Checkpoint 跨作业文件引用的问题要如何避免
|
26天前
|
流计算 索引
美团 Flink 大作业部署问题之RocksDBStateBackend 的增量 Checkpoint 要怎么制作
美团 Flink 大作业部署问题之RocksDBStateBackend 的增量 Checkpoint 要怎么制作
|
资源调度 流计算
Flink 1.12 yarn-cluster模式触发Savepoint with Yarn指定-yid报异常failed timeout问题及解决
官方给出触发Savepoint with YARN的命令指定了-yid,测试后发现不应指定-yid。分析应该是早期版本需指定-yid,后期版本(至少Flink 1.12)不需要指定-yid,而官网文档未及时更新这个细节问题。
828 0
Flink 1.12 yarn-cluster模式触发Savepoint with Yarn指定-yid报异常failed timeout问题及解决