一、Hadoop主要組件
HDFS
是Hadoop
分佈式文件系統,主要用於數據存儲YARN
是一種資源管理器,主要用於資源調度MapReduce
主要用於計算Common
是輔助工具
二、HDFS架構概述
NameNode(nn)
:存儲文件的元數據,如文件名、目錄結構、屬性,以及每個文件的塊列表和塊所在的DataNode
等DataNode(dn)
:存儲文件塊數據以及其校驗和Secondry NameNode(2nn)
:用來監控HDFS
狀態的輔助後臺程序,每隔一段時間獲取HDFS
元數據的快照- 輔助
NameNode
,分擔其工作量,比如定期合併Fsimage
和Edits
,並推送給NameNode
; - 在緊急情況下,可輔助恢復
NameNode
。 - 注意:
Secondry NameNode(2nn)
並非NameNode
的熱備,當NameNode
掛掉的時候,它並不能馬上替換NameNode
並提供服務。
- 輔助
- 個人理解:
NameNode
類似索引,存儲目錄,DataNode
存儲相關數據,Secondry NameNode
用於輔助NameNode
三、YARN架構概述
ResourceManager(RM)
:用於處理客戶端請求;監控NodeManager
;啓動或監控ApplicationMaster
;資源的分配與調度NodeManager(NM)
:管理單個節點上的資源;處理來自ResourceManager
的命令;處理來自ApplicationMaster
的命令ApplicationMaster(AM)
:負責數據切分;爲應用程序申請資源並分配給內部的任務;任務的監控與容錯Container
:YARN
中資源的抽象,它封裝了某個節點上的多維度資源,如內存、CPU
、磁盤、網絡等- 目前重點理解
ResourceManager
和NodeManager
四、MapReduce架構概述
MapReduce
將計算分爲兩個階段:
Map
階段:並行處理輸入數據Reduce
階段:對Map
結果進行彙總