Flink Job更新和恢复

Checkpoints 的主要目的是为意外失败的作业提供恢复机制。
Savepoints的设计更侧重于可移植性和操作灵活性,尤其是在 job 变更方面。Savepoint 的用例是针对计划中的、手动的运维。例如,可能是更新你的 Flink 版本,更改你的作业图等等。

flink任务逻辑代码修改如何提交

在Apache Flink中,对任务逻辑代码进行修改并提交是一个涉及多个步骤的过程。以下是根据搜索结果提供的步骤和注意事项:

  1. 代码修改

    • 在开发环境中对Flink任务的逻辑代码进行修改。这可能包括更改数据处理逻辑、调整并行度、优化状态管理等。
  2. 单元测试和集成测试

    • 对修改后的代码进行彻底的测试,确保新的逻辑按预期工作。可以使用Flink提供的测试工具和框架进行测试。
  3. 构建和打包

    • 使用Maven或Gradle等构建工具将修改后的代码打包成JAR文件。确保所有依赖项都包含在内。
  4. 测试部署

    • 在测试环境中部署和运行打包后的JAR文件,以验证其在实际运行环境中的表现。
  5. 创建Savepoint

    • 如果需要从旧版本平滑过渡到新版本,可以在停止旧作业之前创建一个savepoint。
  6. 停止旧作业

    • 在生产环境中停止当前运行的Flink作业。如果之前创建了savepoint,可以使用它来恢复状态。
  7. 提交新作业

    • 使用Flink命令行工具或Flink客户端提交新的JAR文件。可以使用以下命令提交作业:

      sh 复制代码
      ./bin/flink run -c your.main.Class your-application.jar
    • 如果使用savepoint恢复状态,可以添加-s参数:

      sh 复制代码
      ./bin/flink run -c your.main.Class -s savepointPath your-application.jar
  8. 监控和验证

    • 在新作业启动后,密切监控其性能和行为,确保一切正常。可以使用Flink的Web UI来监控作业状态和指标。
  9. 文档更新

    • 更新相关的开发文档和操作文档,以反映代码变更和新的部署信息。
  10. 回滚计划

    • 准备一个回滚计划,以防新作业出现问题。如果新作业运行不稳定,可以使用savepoint快速回滚到旧版本。

在整个过程中,确保遵循最佳实践,如代码审查、持续集成和持续部署(CI/CD)等,以确保代码质量和部署的可靠性。同时,保持与团队成员的沟通,确保每个人都了解变更的内容和影响。

参考:

https://nightlies.apache.org/flink/flink-docs-release-1.20/zh/docs/ops/state/checkpoints_vs_savepoints/

相关推荐
爱搞技术的猫猫2 小时前
实现API接口的自动化
大数据·运维·数据库·性能优化·自动化·产品经理·1024程序员节
路由侠内网穿透2 小时前
飞牛私有云访问外网
大数据·服务器·开源软件
追光天使2 小时前
大数据相关技术的基本概念?
大数据
lfjcjy2 小时前
成都栩熙酷网络科技有限公司抖音小店中的佼佼者
大数据
Mephisto.java3 小时前
【大数据学习 | HBASE高级】hive操作hbase
大数据·hbase
qq_446598043 小时前
contos7.9 部署3节点 hadoop3.4 集群 非高可用
大数据·hadoop
BD_Marathon4 小时前
Spark:背压机制
大数据·分布式·spark
_waylau4 小时前
Spark 新作《循序渐进 Spark 大数据应用开发》简介
大数据·分布式·spark·应用开发
Elastic 中国社区官方博客4 小时前
Elasticsearch 和 Kibana 8.16:Kibana 获得上下文和 BBQ 速度并节省开支!
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
一个处女座的程序猿4 小时前
LLMs之VDB:Elasticsearch的简介、安装和使用方法、案例应用之详细攻略
大数据·elasticsearch·搜索引擎