Amazon Managed Service for Apache Flink (Amazon MSF) は、以前は Amazon Kinesis Data Analytics for Apache Flink と呼ばれていました。
アプリケーションのアップグレードに関する一般的なベストプラクティスと推奨事項
-
本番稼働環境のアップグレードを試みる前に、本番稼働以外の環境で、状態なしの新しいジョブ/ランタイムをテストします。
-
まず、本番稼働用ではないアプリケーションでステートフルアップグレードをテストすることを検討してください。
-
新しいジョブグラフと、アップグレードしたアプリケーションの起動に使用するスナップショットに互換性があることを確認します。
-
オペレーター状態で保存されているタイプが同じままであることを確認します。タイプが変更された場合、Apache Flink はオペレーター状態を復元できません。
-
uidメソッドを使用して設定したオペレーター ID が同じままであることを確認します。Apache Flink では、オペレーターに一意の ID を割り当てることを強く推奨しています。詳細については、Apache Flink ドキュメントの「Assigning Operator IDs」を参照してください。 オペレーターに ID を割り当てない場合、Flink が自動的に ID を生成します。この場合、ID はプログラム構造に依存し、変更されると互換性の問題が発生する可能性があります。Flink はオペレーター ID を使用して、スナップショットの状態とオペレーターを照合します。オペレーター ID を変更すると、アプリケーションが起動しないか、またはスナップショットに保存されている状態が削除され、新しいオペレーターが状態なしで起動します。
-
キー付き状態の保存に使用されるキーを変更しないでください。
-
ウィンドウや結合などのステートフル演算子の入力タイプを変更しないでください。これにより、オペレーターの内部状態のタイプが暗黙的に変更され、状態の互換性がなくなる原因になります。
-