MapReduce的容錯機制

2021-07-22 20:41:54 字數 480 閱讀 7019

mapreduce提供了很好的容錯機制,所謂容錯就是允許在整個任務執行過程中tasktracker中間出現當機,發生故障,或jvm發生重啟等等一些情況都允許它出錯,

出錯有兩種機制,

1.重複執行

出錯有可能是job出錯,有可能是硬體的問題,也有可能是資料的問題,不管什麼樣的問題,首先會嘗試重試,再次執行,也就是重複執行,重複執行一般預設重複執行4次後,如果還是失敗的話就放棄執行。

2.推測執行

所謂推測執行,在整個任務執行過程中,需要等到所有map端執行完成後,reduce端才會開始,那麼這時候有可能存在某個節點算的特別慢,jobtracker就會發現某個節點算的特別慢,它比別的慢的很多的時候說明它出現了問題,推測執行這個時候會這個慢的繼續算,在利用找一台tasktracker做同樣的事情,只要這個事情新建的和之前的誰先算完,就會把另外乙個終止了,這樣通過推測執行,來保證整個任務的計算不會因為某一兩個tasktracker故障或出現問題導致整個任務執行效率很低。

mapreduce 容錯相關引數

每個map task最大重試次數,一旦重試引數超過該值,則認為map task執行失敗,預設值 4。每個reduce task最大重試次數,一旦重試引數超過該值,則認為map task執行失敗,預設值 4。當失敗的map task失敗比例超過該值為,整個作業則失敗,預設值為0.如果你的應用程式允許丟...

Spark Spark容錯機制

一般來說,分布式資料集的容錯性有兩種方式 資料檢查點和記錄資料的更新。面向大規模資料分析,資料檢查點操作成本很高,需要通過資料中心的網路連線在機器之間複製龐大的資料集,而網路頻寬往往比記憶體頻寬低得多,同時還需要消耗更多的儲存資源。因此,spark選擇記錄更新的方式。但是,如果更新粒度太細太多,那麼...

Spark容錯機制

一般來說,分布式資料集的容錯性有兩種方式 資料檢查點和記錄資料的更新。面向大規模資料分析,資料檢查點操作成本很高,需要通過資料中心的網路連線在機器之間複製龐大的資料集,而網路頻寬往往比記憶體頻寬低得多,同時還需要消耗更多的儲存資源。因此,spark選擇記錄更新的方式。但是,如果更新粒度太細太多,那麼...