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/

相关推荐
微三云-张梅8 小时前
【三人成团机制如何激活沉默用户的复购意愿?】
大数据·华一健康·微三云·拼团
IT小白杨8 小时前
工程视角下的浏览器环境API:资源模型、权限审计与MCP实践
大数据·经验分享·selenium·chrome devtools·安全架构·指纹浏览器
遥感知识服务10 小时前
从局部阈值、双极化到暗地表剔除:NASA OPERA DSWx-S1全球动态水体算法拆解
大数据·人工智能·深度学习·神经网络·算法·机器学习
小K讲AI营销10 小时前
AI算力中心要花多少钱?拆解显卡、电费和选址
大数据
固定资产管理系统软件12 小时前
商务局RFID固定资产管理系统的应用价值与落地要点解析
大数据·python
FoldWinCard13 小时前
K8s集群部署的方法原理
大数据·容器·kubernetes
招财小梗14 小时前
AI矩阵获客,品牌连锁落地方案揭秘
大数据·人工智能·矩阵
用户36105886261214 小时前
SparkSQL 之 Hive On Spark 原理分析
大数据·spark
白色机械键盘14 小时前
领域大模型微调数据集构建实战
大数据·人工智能
东莞和裕包装15 小时前
如何管控广州定制纸箱生产中的啤切精度与印刷色差质量问题
大数据·运维·网络·人工智能