システムチェックポイントとジョブスナップショットは、総称して状態セットと呼ばれます。このトピックでは、ジョブの状態セットの作成、表示、削除、および特定の状態からのジョブの復元など、管理方法について説明します。
背景情報
概念 | 詳細 |
システムチェックポイント (Apache Flink のチェックポイントに相当) | チェックポイントのライフサイクルは Flink システムによって完全に管理されます。[チェックポイント間隔]、[チェックポイントタイムアウト]、[チェックポイント間の最小間隔] を設定し、チェックポイントの生成ステータスをモニターできます。チェックポイントを手動で作成または削除することはできません。デフォルトでは、ジョブはジョブの回復のために選択可能な状態として 1 つのチェックポイントを保持します。パラメーター設定の詳細については、「ジョブデプロイメント情報の設定」をご参照ください。 |
ジョブスナップショット (Apache Flink のセーブポイントに相当) | ライフサイクルはユーザーによって完全に管理されます。
説明 定期的な生成またはクリーンアップが設定されている場合、システムはユーザーが設定したルールに従います。したがって、これらの操作もユーザー管理と見なされます。 |
チェックポイントとジョブスナップショットでは、以下の操作が可能です。次の表に、シナリオと関連ドキュメントへのリンクを示します。
操作 | シナリオ | ドキュメントリンク |
ジョブスナップショットの手動作成 | ジョブの実行中または停止中に特定の時点で手動でジョブスナップショットを作成し、そのスナップショットからジョブを復元したい場合は、手動でジョブスナップショットを作成できます。 重要
| |
ジョブスナップショットの定期的な自動作成の設定 | システムに定期的にジョブスナップショットを自動作成させる必要がある場合は、作成期間を設定できます。ルールを保存すると、ジョブの実行中にシステムが指定された期間で自動的にジョブスナップショットを作成します。手動で作成する必要はありません。 | |
システムチェックポイントとジョブスナップショット生成の概要 | 概要ページでは、チェックポイントとジョブスナップショットの生成履歴を表示して、ジョブ状態のバックアップステータスと作成時刻をすばやく把握できます。 | |
指定したスナップショット (他のジョブのスナップショットを含む) からのジョブの復元 | 特定のスナップショットからジョブを復元したい場合は、そのスナップショットを指定してジョブを回復できます。 説明 ジョブ間でスナップショットを共有できます。この場合、デュアルランテストを実行する場合など、ジョブ間の状態の互換性を確保する必要があります。 | |
ジョブスナップショットの自動クリーンアップルールの設定 | 手動で削除する代わりにシステムにジョブスナップショットを自動的にクリーンアップさせたい場合は、保持するスナップショットの数または保持期間を設定できます。ルールを保存すると、ジョブの実行中にシステムがこのルールに基づいてスナップショットを自動的にクリーンアップします。 説明
| |
特定のジョブスナップショットの手動削除 | 手動で作成されたジョブスナップショットは、ジョブが停止する前に自動的に削除されません。そのため、古いジョブスナップショットを定期的に削除する必要があります。そうしないと、OSS バケットの不要なスペースを占有し、ストレージ料金が発生します。 | |
State 関連パラメーターの設定 | ストリーム状態ストレージシステム、SQL ジョブの State TTL、およびジョブスナップショットプロセス中に生成される一時データをローカルディスクに保存するかどうかに関連するパラメーターを設定します。 |
ジョブスナップショットの手動作成
ジョブスナップショットは、[実行中] のジョブに対してのみ手動で作成できます。
ジョブスナップショット作成ページに移動します。
対象のワークスペースの [操作] 列にある [コンソール] をクリックします。
ページで、対象のジョブの名前をクリックします。
ページの右上隅にある [スナップショットの作成] をクリックします。
スナップショットのフォーマットを選択し、説明を入力します。

[作成] をクリックします。
ジョブスナップショットの定期的な自動作成の設定
状態セット管理ページに移動します。
対象のワークスペースの [操作] 列にある [コンソール] をクリックします。
ページで、対象のジョブの名前をクリックします。
[ステートセット管理] をクリックします。
[構成] タブで、[ジョブスナップショットの定期的な自動作成] を有効にし、期間を設定します。
[クイック設定] をクリックして期間を選択するか、cron 式を手動で入力できます。式を手動で入力するには、各フィールドを順番にクリックして値を変更します。次の表に、cron 式の 5 つのフィールドの有効値とサポートされている特殊文字を示します。
フィールド
必須
値の範囲
特殊文字
分
はい
[0, 59]
* , - /
時
はい
[0, 23]
* , - /
日
はい
[1, 31]
* , - /
月
はい
[1, 12] または [JAN, DEC]
* , - /
週
はい
[1, 7] または [MON, SUN]
説明[1, 7] 形式を使用する場合、1 は月曜日を表し、7 は日曜日を表します。
* , - /
説明最小間隔は 10 分です。cron 式で指定された間隔が 10 分未満の場合、システムはデフォルトで 10 分ごとにタスクをトリガーします。
各フィールドはいくつかの特殊文字をサポートしています。各特殊文字には、次の表に示すように特定の意味があります。
特殊文字
意味
例
*すべての有効な値を示します。
「月」フィールドでは、
*は毎月を示します。「週」フィールドでは、*は曜日ごとを示します。,以下は列挙値です。
「分」フィールドでは、
5,20はタスクが 5 分と 20 分にトリガーされることを示します。-範囲
「分」フィールドでは、
5-20はタスクが 5 分から 20 分まで毎分 1 回トリガーされることを示します。/増分を指定します。
「分」フィールドでは、
0/15はタスクが 0 分から 15 分ごとにトリガーされることを示します。「分」フィールドでは、3/20はタスクが 3 分から 20 分ごとにトリガーされることを示します。次の表に、cron 式の例を示します。
例
説明
15 10 * * *毎日午前 10:15 にタスクを実行します。
0 12 * * *毎日午後 12:00 にタスクを実行します。
0 10,14,16 * * *毎日午前 10:00、午後 2:00、午後 4:00 にタスクを実行します。
0/30 9-17 * * *毎日午前 9:00 から午後 5:00 まで 30 分ごとにタスクを実行します。
* 14 * * *毎日午後 2:00 から午後 2:59 まで毎分タスクを実行します。
0-5 14 * * *毎日午後 2:00 から午後 2:05 まで毎分タスクを実行します。
0/5 14 * * *毎日午後 2:00 から午後 2:55 まで 5 分ごとにタスクを実行します。
0/5 14,18 * * *毎日午後 2:00 から午後 2:55 までと、午後 6:00 から午後 6:55 まで 5 分ごとにタスクを実行します。
0 12 * * WED毎週水曜日の午後 12:00 にタスクを実行します。
15 10 15 * *毎月 15 日の午前 10:15 にタスクを実行します。
10,44 14 * 3 WED毎年 3 月の毎週水曜日の午後 2:10 と午後 2:44 にタスクを実行します。
重要フィールドの定義:cron 式には、
分 時 日 月 曜日の 5 つのフィールドがあります。日と曜日の結合:3 番目のフィールド (日) と 5 番目のフィールド (曜日) の両方に値を指定した場合、条件は論理 OR になります。
0 12 1 * 5は、毎月 1 日または毎週金曜日の午後 12:00 にタスクをトリガーします。月の初日が金曜日である場合にのみタスクをトリガーするわけではありません。疑問符 (
?) はサポートされていません:?文字は使用しないでください。システムがエラーを報告するか、式を認識できなくなります。フィールドを無視するには、*文字を使用してください。
状態生成の概要の表示
状態セット管理ページに移動します。
対象のワークスペースの [操作] 列で、[コンソール] をクリックします。
ページで、対象のジョブ名をクリックします。
[状態セット管理] をクリックします。
[概要] タブでは、以下の情報を表示できます。
カテゴリ
概要情報
システムチェックポイント
最後に成功したチェックポイントと失敗したチェックポイントに関する情報 (ID、完了時間、期間、完全なストレージサイズなど) を表示します。
ジョブスナップショット
最後に成功したジョブスナップショットと失敗したジョブスナップショットに関する情報 (スナップショット ID、完了時間、期間、または失敗時間など) を表示します。
指定したスナップショット (他のジョブのスナップショットを含む) からのジョブの復元
スナップショットからジョブを復元するには、ジョブが [停止] している必要があります。ジョブが [実行中] の場合は、まず停止してください。
状態セット管理ページに移動します。
対象のワークスペースの [操作] 列にある [コンソール] をクリックします。
に移動し、対象のジョブの名前をクリックします。
[状態セット管理] をクリックします。
[履歴] タブで、[ジョブスナップショット] リストから対象のスナップショットを見つけます。
対象のスナップショットの [操作] 列で、 を選択します。
[ジョブの開始] 設定ダイアログボックスで、ジョブの起動情報を設定します。
設定の詳細については、「ジョブの開始」をご参照ください。
ジョブスナップショットの自動クリーンアップルールの設定
状態セット管理ページに移動します。
対象のワークスペースの [操作] 列にある [コンソール] をクリックします。
ページで、対象のジョブ名をクリックします。
[状態セット管理] をクリックします。
[構成] タブで、[ジョブスナップショットの定期的な自動クリーンアップ] を有効にし、自動クリーンアップルールを設定します。
[保持する履歴スナップショットの数] と [履歴スナップショットの最大保持期間] を設定できます。Flink ジョブの実行中に、これらの条件のいずれかが満たされると、スナップショットは削除されます。
[変更を保存] をクリックします。
特定のジョブスナップショットの手動削除
状態セット管理ページに移動します。
対象のワークスペースの [操作] 列にある [コンソール] をクリックします。
ページで、対象のジョブ名をクリックします。
[状態セット管理] をクリックします。
[履歴] タブで、[ジョブスナップショット] リストから対象のスナップショットを見つけます。
対象のスナップショットの [操作] 列で、 を選択します。
[OK] をクリックします。
State 関連パラメーターの設定
対象のジョブの O&M ページに移動します。
対象のワークスペースを見つけ、[操作] 列で [コンソール] をクリックします。
ページで、対象のジョブをクリックします。
[デプロイメント詳細] タブの [ランタイムパラメーター設定] セクションで、[編集] をクリックします。
[その他の設定] で、コードを追加し、[保存] をクリックします。次のコードは一例です。
state.backend.incremental: true table.exec.state.ttl: 129600000Flink に設定できる基本パラメーターと高度なパラメーターの詳細については、「エンタープライズレベルの state backend ストレージ設定」をご参照ください。
関連ドキュメント
Realtime Compute for Apache Flink のチェックポイントまたはジョブスナップショットに関するよくある質問への回答については、「チェックポイントとジョブスナップショット」をご参照ください。
SQL の変更が互換性に与える影響の詳細については、「SQL の変更と互換性」をご参照ください。