hadoop各组件及其作用
Hadoop是一個(gè)適合海量數(shù)據(jù)分布式存儲(chǔ)和計(jì)算的一個(gè)平臺(tái)。目前主要由三大組件組成:
HDFS 、mapreduce、Yarn。
- HDFS:是一個(gè)分布式存儲(chǔ)框架,適合海量數(shù)據(jù)的存儲(chǔ)
- mapreduce : 是一個(gè)分布式計(jì)算框架。適合海量數(shù)據(jù)的計(jì)算
- Yarn:是一個(gè)資源調(diào)度平臺(tái),負(fù)責(zé)給計(jì)算框架分配資源
1.HDFS
主從結(jié)構(gòu),由namenode和datanode組成。其中namenode最多可以有兩個(gè),但同時(shí)只能有一個(gè)。datanode理論上可以有無限個(gè),極限大概是4000臺(tái)。
-
namenode負(fù)責(zé):
-接受用戶操作請(qǐng)求,是用戶操作的入口-維護(hù)文件系統(tǒng)的目錄結(jié)構(gòu),稱為命名空間 -
datanode負(fù)責(zé):
實(shí)際存儲(chǔ)數(shù)據(jù)
文件塊block:最基本的存儲(chǔ)單位,2.0以后默認(rèn)大小為128M
-
SecondaryNameNode
fsimage:元數(shù)據(jù)鏡像文件,存儲(chǔ)某一時(shí)間段Namenode內(nèi)存元數(shù)據(jù)信息edits:用戶操作日志文件負(fù)責(zé) 將fsimage與edits文件合并,防止namenode故障及緩解namenode壓力
什么時(shí)候checkpoint:
1.fs.checkpoint.period 指定兩次checkpoint的最大時(shí)間間隔,默認(rèn)3600秒
2.fs.checkpoint.size 規(guī)定edits文件的最大值,一旦超過這個(gè)值則強(qiáng)制checkpoint,默認(rèn)64M
2.mapreduce
依賴磁盤IO的批處理計(jì)算模型。
主從結(jié)構(gòu) 主節(jié)點(diǎn)只有一個(gè),為MRAppMaster,從節(jié)點(diǎn)為具體的task組成。
由兩個(gè)階段組成:map和reduce階段。
map階段是一個(gè)獨(dú)立的程序,有很多的節(jié)點(diǎn)同時(shí)運(yùn)行,每個(gè)節(jié)點(diǎn)處理一部分?jǐn)?shù)據(jù)。reduce階段是一個(gè)獨(dú)立的程序,有很多節(jié)點(diǎn)同時(shí)運(yùn)行,每個(gè)節(jié)點(diǎn)處理一部分?jǐn)?shù)據(jù)。
原理圖:
shuffle圖:
3.Yarn
主從結(jié)構(gòu),主節(jié)點(diǎn)最多可以有兩個(gè),為ResourceManager;從節(jié)點(diǎn)為ResourceManager
-
ResourceManager:
-處理客戶端的請(qǐng)求-監(jiān)控NodeManger-啟動(dòng)或監(jiān)控ApplicationMaster-資源的分配與調(diào)度 -
NodeManager:
-管理單個(gè)節(jié)點(diǎn)的資源-處理來自ResourceManager的命令-處理來自AppalicationMaster的命令 -
ApplicationMaster"
-負(fù)責(zé)數(shù)據(jù)的切分-為應(yīng)用程序申請(qǐng)資源并分配給內(nèi)部任務(wù)-任務(wù)的監(jiān)控與容錯(cuò) -
Container:
Container是YARN中資源的抽象,它封裝了某個(gè)節(jié)點(diǎn)上的多維度資源,如內(nèi)存、CPU、磁盤、網(wǎng)絡(luò)等
總結(jié)
以上是生活随笔為你收集整理的hadoop各组件及其作用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CAD软件中如何自定义CAD填充图案?
- 下一篇: HTTP代理如何使用