分散式計算與Map Reduce

weixin_39767869發表於2021-01-03

一、分散式計算
1、定義:一個分散式計算系統是通過若干個網路互連的計算機組成的軟硬體計算系統,並且這些計算機互相配合完成一個共同任務。
在這裡插入圖片描述
多個處理器共享記憶體(c);每個處理器有屬於自己的記憶體(b)。
優點:可擴充套件、效能好、容錯性好(系統故障後,仍然可以恢復任務)
缺點:多臺機器管理
二、Map Reduce
1.抽象架構
在這裡插入圖片描述
2.系統架構
在這裡插入圖片描述
Job Client:使用者編寫的Map Reduce程式通過JobClient提交給JobTracker
Job Tracker:負責資源監控和作業排程,並且監控所有TaskTracker與作業的健康情況,一旦有失敗情況發生,就會在相應的任務分配到其他節點上去執行。
Task Tracker:主要負責監控任務進度,並且彙報給Job Tracker.
3.工作排程原理
在這裡插入圖片描述
Map Reducer Application Master:負責分配任務,協調Mapper和Reducer進行執行
Mapper Worker:負責執行 Mapper子任務
Reducer Worker:負責Reduce函式功能,負責彙總Reducer子任務
4.資料處理流程
在這裡插入圖片描述
5.shuffling
在這裡插入圖片描述

相關文章