FLINKチェックポイントは、フォールトトレランスのためのコアメカニズムです。これは、定期的に各スナップショット・ストレージ・オペレーター(スナップショット)のデータ処理を行うことができます。FLINKプログラムのダウンタイム場合、データはこれらのスナップショットから復元することができます。
各ソースに送信された1チェックポイントコーディネータ(コーディネータ)スレッドサイクル発生関門(フェンス)
2.ソース現在の状態のスナップショット(HDFSに保存することができます)
コーディネーターのスナップショットを確認3.ソースが完了しました
4.ソースは下流バリア変換オペレータに送信し続け
完全なスナップショット・コーディネータを確認するシンクオペレータまで5.変換オペレーターリピート源
現在のサイクルの6コーディネータスナップショットの完了を確認し
設定例コード:
// 5 秒の開始時間のチェックポイント env.enableCheckpointing(5000) //は、設定されたチェックポイントをのみチェックポイントに一度 env.getCheckpointConfig.setCheckpointingMode(CheckpointingMode.EXACTLY_ONCE) // 設定二回のチェックポイントの最小時間間隔 env.getCheckpointConfig.setMinPauseBetweenCheckpoints(1000) //チェックポイントのタイムアウトの長さ env.getCheckpointConfig.setCheckpointTimeout(60000) // 最大許容チェックポイントの並列処理 env.getCheckpointConfig.setMaxConcurrentCheckpoints(1) // プログラムが閉じているときは、追加のトリガーチェックポイントを env.getCheckpointConfig.enableExternalizedCheckpoints(CheckpointConfig.ExternalizedCheckpoin tCleanup.RETAIN_ON_CANCELLATION) // 設定されたチェックポイントのアドレスを env.setStateBackend(新FsStateBackend("HDFS:// CDH1:8020 / FLINK-チェックポイント/" )) |
|