应用程序升级的一般最佳实践和建议 - Managed Service for Apache Flink
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon Managed Service for Apache Flink(Amazon MSF)之前称为 Amazon Kinesis Data Analytics for Apache Flink。

应用程序升级的一般最佳实践和建议

  • 在尝试进行生产升级之前,在非生产环境中测试无状态的新作业/运行时。

  • 考虑先使用非生产应用程序测试有状态升级。

  • 确保新作业图与用来启动升级后应用程序的快照处于兼容状态。

    • 确保存储在操作员状态下的类型保持不变。如果类型已更改,Apache Flink 将无法恢复操作员状态。

    • 确保使用 uid 方法设置的操作员 ID 保持不变。Apache Flink 强烈建议为操作员分配唯一的 ID。有关更多信息,请参阅 Apache Flink 文档中的分配操作员 ID

      如果您没有为操作员分配 ID,Flink 会自动生成它们。在这种情况下,ID 可能取决于程序结构,如果更改,则可能会导致兼容性问题。Flink 使用操作员 ID 将快照中的状态与操作员进行匹配。更改操作员 ID 会导致应用程序无法启动,或者快照中存储的状态被删除,而新的操作员在没有状态的情况下启动。

    • 不要更改用于存储密钥状态的密钥。

    • 不要修改有状态操作员的输入类型,例如 window 或 join。这会隐式更改操作员内部状态的类型,从而导致状态不兼容。