Cloud 学习笔记10.MapReduce 容错
生活随笔
收集整理的這篇文章主要介紹了
Cloud 学习笔记10.MapReduce 容错
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
MapReduce Fault-Tolerance
服務器容錯設計
- Node Manager向Resource Manager發送心跳包。服務器宕機后,Resource Manager會通知所有受影響的Application Master。
- Node Manager會追蹤所有當前服務器上運行的任務。如果有正在進行中的任務被終止,Node Manager將任務標記為idle, 并且重啟任務
- Application Master向Resource Manager發送心跳包。一旦心跳停止,Resource Manager重啟Application Master,Application Master同步執行中任務的信息
Resource Manager容錯設計
- 使用舊的checkpoints,啟動secondary Resource Manager
為了避免消息傳輸在網絡中消耗過多的資源,container分配請求是通過心跳包傳輸的的
stragglers(落后者)
straggler是指集群中執行緩慢的任務。每個階段,執行最慢的任務,決定了總體的速度。straggler的原因可能有很多:磁盤損壞、網絡擁堵、CPU瓶頸、內存瓶頸
容錯設計:
- 跟蹤記錄每個任務的進度
- speculative execuation: 對straggler另起一份副本執行(repliacted execuation)。一旦其中一份副本(replica)執行完成,整個任務被標記為完成。
假設job1、job2、job3的完成進度分別為90%、50%、10%。Application Master會在另一臺服務器上運行job3的replica。一旦其中一個job3完成,整個任務會被標記為完成。
地方性(locality)
- 云具有繼承性拓撲,機架內通信一般會快于跨核心交換機的通信
- 數據被分成chunk,在不同機架備份三份
- MapReduce 會根據網絡距離調度任務 : 擁有對應數據副本的節點 > 在同一機架的節點 > 任意地點
轉載于:https://juejin.im/post/5d4f0b8df265da03bb4a98e9
總結
以上是生活随笔為你收集整理的Cloud 学习笔记10.MapReduce 容错的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 桃花,梨花,油菜花
- 下一篇: 转一个后缀数组的简单总结: