真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

新手必備:Hadoop基礎——YARN認知-創(chuàng)新互聯(lián)

Yarn是一個分布式的資源管理系統(tǒng),用以提高分布式的集群環(huán)境下的資源利用率,這些資源包括內(nèi)存、IO、網(wǎng)絡、磁盤等。其產(chǎn)生的原因是為了解決原MapReduce框架的不足。

創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都網(wǎng)站制作、網(wǎng)站建設、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的劍川網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!

最初MapReduce的committer們還可以周期性的在已有的代碼上進行修改,可是隨著代碼的增加以及原MapReduce框架設計的不足,在原MapReduce框架上進行修改變得越來越困難,

所以MapReduce的committer們決定從架構上重新設計MapReduce,使下一代的MapReduce(MRv2/Yarn)框架具有更好的擴展性、可用性、可靠性、向后兼容性和更高的資源利用率以及能支持除了MapReduce計算框架外的更多的計算框架。

1、MapReduce框架的不足

現(xiàn)在比較流行的說法是jobtracker的問題,比如單點故障,任務過重。但除了Jobtracker,同時還有一個TaskTracker。我們看下圖:
新手必備:Hadoop基礎——YARN認知

JobTacker概述

JobTacker其承擔的任務有:接受任務、計算資源、分配資源、與DataNode進行交流。

在hadoop中每個應用程序被表示成一個作業(yè),每個作業(yè)又被分成多個任務,JobTracker的作業(yè)控制模塊則負責作業(yè)的分解和狀態(tài)監(jiān)控。

*最重要的是狀態(tài)監(jiān)控:主要包括TaskTracker狀態(tài)監(jiān)控、作業(yè)狀態(tài)監(jiān)控和任務狀態(tài)監(jiān)控。主要作用:容錯和為任務調(diào)度提供決策依據(jù)。

TaskTracker概述

TaskTracker是JobTracker和Task之間的橋梁:一方面,從JobTracker接收并執(zhí)行各種命令:運行任務、提交任務、殺死任務等;另一方面,將本地節(jié)點上各個任務的狀態(tài)通過心跳周期性匯報給JobTracker。TaskTracker與JobTracker和Task之間采用了RPC協(xié)議進行通信

資源slot概述

slot不是CPU的Core,也不是memory chip,它是一個邏輯概念,一個節(jié)點的slot的數(shù)量用來表示某個節(jié)點的資源的容量或者說是能力的大小,因而slot是 Hadoop的資源單位。

hadoop中什么是slots

所以JobTracker需要完成的任務太多,既要維護job的狀態(tài)又要維護job的task的狀態(tài),造成過多的資源消耗

在taskTracker端,用map/reduce task作為資源的表示過于簡單,沒有考慮到CPU、內(nèi)存等資源情況,當把兩個需要消耗大內(nèi)存的task調(diào)度到一起,很容易出現(xiàn)OOM

把資源強制劃分為map/reduce slot,當只有map task時,reduce slot不能用;當只有reduce task時,map slot不能用,容易造成資源利用不足。

2、Yarn

首先讓我們看一看Yarn的架構

新手必備:Hadoop基礎——YARN認知

1.ResourceManager概述

是全局的,負責對于系統(tǒng)中的所有資源有最高的支配權。ResourceManager作為資源的協(xié)調(diào)者有兩個主要的組件:Scheduler和ApplicationsManager(AsM)。

Scheduler負責分配最少但滿足application運行所需的資源量給Application。Scheduler只是基于資源的使用情況進行調(diào)度,并不負責監(jiān)視/跟蹤application的狀態(tài),當然也不會處理失敗的task。

ApplicationsManager負責處理client提交的job以及協(xié)商第一個container以供applicationMaster運行,并且在applicationMaster失敗的時候會重新啟動applicationMaster。

2.NodeManager概述

NM主要負責啟動RM分配給AM的container以及代表AM的container,并且會監(jiān)視container的運行情況。

在啟動container的時候,NM會設置一些必要的環(huán)境變量以及將container運行所需的jar包、文件等從hdfs下載到本地,也就是所謂的資源本地化;當所有準備工作做好后,才會啟動代表該container的腳本將程序啟動起來。

啟動起來后,NM會周期性的監(jiān)視該container運行占用的資源情況,若是超過了該container所聲明的資源量,則會kill掉該container所代表的進程。

3.ApplicationMaster概述

由于NodeManager 執(zhí)行和監(jiān)控任務需要資源,所以通過ApplicationMaster與ResourceManager溝通,獲取資源。換句話說,ApplicationMaster起著中間人的作用。

轉換為更專業(yè)的術語:AM負責向ResourceManager索要NodeManager執(zhí)行任務所需要的資源容器,更具體來講是ApplicationMaster負責從Scheduler申請資源,以及跟蹤這些資源的使用情況以及任務進度的監(jiān)控。

所以我們看到JobTracker的功能被分散到各個進程中包括ResourceManager和NodeManager:

比如監(jiān)控功能,分給了NodeManager,和Application Master。

ResourceManager里面又分為了兩個組件:調(diào)度器及應用程序管理器。

也就是說Yarn重構后,JobTracker的功能,被分散到了各個進程中。同時由于這些進程可以被單獨部署所以這樣就大大減輕了單點故障,及壓力。

最后要提醒在yarn上寫應用程序并不同于我們熟知的MapReduce應用程序,必須牢記yarn只是一個資源管理的框架,并不是一個計算框架,計算框架可以運行在yarn上。我們所能做的就是向RM申請container,然后配合NM一起來啟動container。

結語

感謝您的觀看,如有不足之處,歡迎批評指正。

為了幫助大家讓學習變得輕松、高效,給大家免費分享一大批資料,幫助大家在成為大數(shù)據(jù)工程師,乃至架構師的路上披荊斬棘。在這里給大家推薦一個大數(shù)據(jù)學習交流圈:658558542 歡迎大家進×××流討論,學習交流,共同進步。

當真正開始學習的時候難免不知道從哪入手,導致效率低下影響繼續(xù)學習的信心。

但最重要的是不知道哪些技術需要重點掌握,學習時頻繁踩坑,最終浪費大量時間,所以有有效資源還是很有必要的。

最后祝福所有遇到瓶疾且不知道怎么辦的大數(shù)據(jù)程序員們,祝福大家在往后的工作與面試中一切順利。

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。


網(wǎng)站標題:新手必備:Hadoop基礎——YARN認知-創(chuàng)新互聯(lián)
瀏覽路徑:http://weahome.cn/article/csjchs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部