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学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
13天前
|
消息中间件 SQL Kafka
实时计算 Flink版产品使用问题之通过设置什么可以自动清理旧的checkpoint数据
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
13天前
|
SQL 缓存 Oracle
实时计算 Flink版产品使用问题之如何实现重启后直接跑最新的任务而不是根据checkpoint跑历史数据
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
12天前
|
SQL 关系型数据库 MySQL
实时计算 Flink版操作报错合集之CDC任务在异常后整个record sent从0初始化开始,是什么导致的
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
418 0
|
12天前
|
Java 关系型数据库 流计算
实时计算 Flink版操作报错合集之配置cats进行从MySQL到StarRocks的数据同步任务时遇到报错,该怎么办
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
298 0
|
12天前
|
关系型数据库 MySQL API
实时计算 Flink版操作报错合集之同步MySQL数据到另一个MySQL数据库,第一次同步后源表数据发生变化时目标表没有相应更新,且Web UI中看不到运行的任务,该怎么解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
12天前
|
存储 Java 关系型数据库
实时计算 Flink版操作报错合集之JVM Metaspace不回收并在任务取消后仍然持续增长直至耗尽,是什么导致的
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
12天前
|
消息中间件 关系型数据库 MySQL
实时计算 Flink版操作报错合集之遇到检查点(checkpoint)状态不单调递增,该怎么办
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
12天前
|
消息中间件 Java 关系型数据库
实时计算 Flink版操作报错合集之从 PostgreSQL 读取数据并写入 Kafka 时,遇到 "initial slot snapshot too large" 的错误,该怎么办
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
629 0
|
12天前
|
存储 SQL 关系型数据库
实时计算 Flink版操作报错合集之按时间恢复时,报错:在尝试读取binlog时发现所需的binlog位置不再可用,该怎么办
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
536 0
|
12天前
|
消息中间件 资源调度 Java
实时计算 Flink版操作报错合集之遇到了缺少包的错误,已经添加了相应的 jar 包,仍然出现同样的报错,该怎么解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
563 2