日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

Flink 1.9 故障恢复策略(failover)

發布時間:2024/6/21 综合教程 33 生活家
生活随笔 收集整理的這篇文章主要介紹了 Flink 1.9 故障恢复策略(failover) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

當 Task 發生故障時,Flink 需要重啟出錯的 Task 以及其他受到影響的 Task ,以使得作業恢復到正常執行狀態。

Flink 通過重啟策略和故障恢復策略來控制 Task 重啟:重啟策略決定是否可以重啟以及重啟的間隔;故障恢復策略決定哪些 Task 需要重啟。

全圖重啟故障恢復策略

在全圖重啟故障恢復策略下,Task 發生故障時會重啟作業中的所有 Task 進行故障恢復。

基于 Region 的局部重啟故障恢復策略

該策略會將作業中的所有 Task 劃分為數個 Region。當有 Task 發生故障時,它會嘗試找出進行故障恢復需要重啟的最小 Region 集合。
相比于全局重啟故障恢復策略,這種策略在一些場景下的故障恢復需要重啟的 Task 會更少。

此處 Region 指以 Pipelined 形式進行數據交換的 Task 集合。也就是說,Batch 形式的數據交換會構成 Region 的邊界。
- DataStream 和 流式 Table/SQL 作業的所有數據交換都是 Pipelined 形式的。
- 批處理式 Table/SQL 作業的所有數據交換默認都是 Batch 形式的。
- DataSet 作業中的數據交換形式會根據 [ExecutionConfig]({{ site.baseurl }}/zh/dev/execution_configuration.html)
中配置的 [ExecutionMode]({{ site.javadocs_baseurl }}/api/java/org/apache/flink/api/common/ExecutionMode.html)
決定。

需要重啟的 Region 的判斷邏輯如下:
1. 出錯 Task 所在 Region 需要重啟。
2. 如果要重啟的 Region 需要消費的數據有部分無法訪問(丟失或損壞),產出該部分數據的 Region 也需要重啟。
3. 需要重啟的 Region 的下游 Region 也需要重啟。這是出于保障數據一致性的考慮,因為一些非確定性的計算或者分發會導致同一個
Result Partition 每次產生時包含的數據都不相同。

Region 的局部重啟故障恢復策略實現

1. 根據ExecutionGraph 構建FailoverTopology

總結

以上是生活随笔為你收集整理的Flink 1.9 故障恢复策略(failover)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。