开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

link CDC中如何通过dinky Sava point恢复作业的?

Flink CDC中如何通过dinky Sava point恢复作业的?

展开
收起
小易01 2023-07-26 08:24:59 89 0
3 条回答
写回答
取消 提交回答
  • 要通过 Savepoint 在 Flink CDC 中恢复作业,你可以按照以下步骤进行操作:

    1. 创建 Savepoint:在运行 Flink CDC 任务时,使用以下命令创建一个 Savepoint:

      ./bin/flink savepoint <job_id> [savepoint_directory]
      

      其中 <job_id> 是你要保存的作业的 JobID,[savepoint_directory] 是可选参数,用于指定保存 Savepoint 的目录。如果没有指定目录,则会将 Savepoint 保存在默认位置。

    2. 停止当前作业:执行以下命令停止当前正在运行的作业,以便在恢复前清理状态:

      ./bin/flink cancel <job_id>
      
    3. 恢复作业:使用以下命令从 Savepoint 恢复作业:

      ./bin/flink run -s <savepoint_path> <job_jar> [args...]
      

      其中 <savepoint_path> 是保存的 Savepoint 文件的路径,<job_jar> 是包含 CDC 作业代码的 JAR 文件,[args...] 是可选的作业参数。

    当你使用 Savepoint 恢复作业时,Flink CDC 将会加载之前保存的状态,并从该状态继续处理数据变更。

    请注意,Savepoint 可以在 Flink 的不同版本之间进行迁移,但不保证跨大版本(如从 Flink 1.x 到 Flink 2.x)的兼容性。确保在恢复作业时使用相同版本的 Flink。

    2023-07-31 22:36:25
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    在 Flink CDC 中,可以通过使用 Flink 的 Savepoint 来恢复作业。Savepoint 是一种 Flink 中的快照机制,可以将整个 Flink 作业的状态及进度保存到一个文件中,以便后续使用。
    具体来说,您可以通过以下步骤来使用 Savepoint 来恢复 Flink CDC 作业:
    执行 Savepoint:在 Flink CDC 作业运行期间,您可以手动执行 Savepoint,将当前作业的状态及进度保存到文件中。您可以使用以下命令在 Flink Web UI 或命令行中执行 Savepoint:
    fsharp
    Copy
    ./bin/flink savepoint []
    其中, 是作业的 ID, 是保存 Savepoint 文件的目录。执行完成后,会输出 Savepoint 文件的路径。
    停止 Flink CDC 作业:在恢复作业之前,需要先停止当前的 Flink CDC 作业。您可以在 Flink Web UI 或命令行中执行以下命令来停止作业:
    Copy
    ./bin/flink cancel
    其中, 是要停止的作业的 ID。

    2023-07-29 14:04:47
    赞同 展开评论 打赏
  • 意中人就是我呀!

    "直接手动Sava point停止,然后去停掉的任务日志中找savepoint的地址,然后再指定这个savepoint重启即可。
    此回答整理至钉群“Flink CDC 社区”。"

    2023-07-26 12:16:48
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载