1. 程式人生 > >Hadoop1.X mapreduce原理和缺陷

Hadoop1.X mapreduce原理和缺陷

MapReduce的簡介:

MapReduce是一個軟體框架,客房部件的編寫應用程式,一併行的方式在數千商用硬體組成的叢集節點中處理TB級的資料,並且提供了可靠性和容錯的能力。

MapReduce的正規化:
MapReduce處理模型包括兩個獨立的步驟:
A. 第一步是並行Map階段,輸入資料被分割成離散塊以便可以單獨處理
B. Shuffle階段
C. 第二步是Reduce階段,彙總Map階段的輸出生成預期的結果。
這裡寫圖片描述

MapReduce的缺陷:

A. 可擴充套件性:
a) JobTracker記憶體中儲存使用者作業的資訊
b) JobTracker使用的是粗粒度的鎖
B. 可靠性和可用性:
a) JobTracker失效會多事叢集中所有的執行作業,使用者需手動重新提交和恢復工作流
C. 對不同程式設計模型的支援
a) HadoopV1以MapReduce為中心的設計雖然能支援廣泛的用例,但是並不適合所有大型計算