1.hadoop 1.x
JobTracker,TaskTracker
缺點(diǎn):JobTracker負(fù)載過重,存在單點(diǎn)故障;與MapReduce強(qiáng)耦合,其他計(jì)算框架需要重復(fù)實(shí)現(xiàn)資源管理;
2.hadoop 2.x
App Mstr (Application Master進(jìn)程)
3.工作流程
如架構(gòu)圖所示,大致的工作流程如下:
用戶使用客戶端向 RM 提交一個(gè)任務(wù),同時(shí)指定提交到哪個(gè)隊(duì)列和需要多少資源。用戶可以通過每個(gè)計(jì)算引擎的對(duì)應(yīng)參數(shù)設(shè)置,如果沒有特別指定,則使用默認(rèn)設(shè)置。
RM 在收到任務(wù)提交的請(qǐng)求后,先根據(jù)資源和隊(duì)列是否滿足要求選擇一個(gè) NM,通知它啟動(dòng)一個(gè)特殊的 container,稱為 Application Master(App Mstr,AM),后續(xù)流程由它發(fā)起。
AM 向 RM 注冊(cè)后根據(jù)自己任務(wù)的需要,向 RM 申請(qǐng) container,包括數(shù)量、所需資源量、所在位置等因素。
如果隊(duì)列有足夠資源,RM 會(huì)將 container 分配給有足夠剩余資源的 NM,由 AM 通知 NM 啟動(dòng) container。
container 啟動(dòng)后執(zhí)行具體的任務(wù),處理分給自己的數(shù)據(jù)。NM 除了負(fù)責(zé)啟動(dòng) container,還負(fù)責(zé)監(jiān)控它的資源使用狀況以及是否失敗退出等工作,如果 container 實(shí)際使用的內(nèi)存超過申請(qǐng)時(shí)指定的內(nèi)存,會(huì)將其殺死,保證其他 container 能正常運(yùn)行。
各個(gè) container 向 AM 匯報(bào)自己的進(jìn)度,都完成后,AM 向 RM 注銷任務(wù)并退出,RM 通知 NM 殺死對(duì)應(yīng)的 container,任務(wù)結(jié)束。
更多關(guān)于“大數(shù)據(jù)培訓(xùn)”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學(xué),課程大綱緊跟企業(yè)需求,更科學(xué)更嚴(yán)謹(jǐn),每年培養(yǎng)泛IT人才近2萬人。不論你是零基礎(chǔ)還是想提升,都可以找到適合的班型,千鋒教育隨時(shí)歡迎你來試聽。