Flink最佳實踐-CheckPoint

Checkpoint功能可以保證作業失敗重啓或升級重啓後,從上次"離開"的位置繼續運行;
比如小米的Flink on Talos就是通過Checkpoint記錄消費的Offset記錄的;如果沒有開啓Checkpoint,那麼每次重啓作業可能會重複消費數據或者丟失數據(與配置相關);

下面來介紹:

  • 如何開啓flink checkpoint
  • java heapsize如何設置
  • checkpoint最佳設置參數是多少
  • 如何結合flink-rockDB實現高效flink狀態編程和穩定的checkpoint






1、開啓 Checkpoint

StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
CheckpointConfig config = env.getCheckpointConfig();
config.setCheckpointInterval(5 * 60 * 1000); // Checkpoint的觸發頻率;
config.setMinPauseBetweenCheckpoints(5 * 60 * 1000); // Checkpoint之間的最小間隔;
config.setCheckpointTimeout(10 * 60 * 1000); // Checkpoint的超時時間;
config.setTolerableCheckpointFailureNumber(3); // 連續3次checkpoint失敗,纔會導致作業失敗重啓;默認值是0 。
config.enableExternalizedCheckpoints(ExternalizedCheckpointCleanup.RETAIN_ON_CANCELLATION); // Cancel Job之後保留Checkpoint文件;

++

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章