Yarn知識點總結

2021-09-26 13:58:30 字數 1649 閱讀 7725

1、yarn 

1)描敘:yarn是乙個資源排程平台,負責為運算程式提供伺服器運算資源,相當於乙個分布式的作業系統平台,而mapreduce等運算程式則相當於執行於作業系統之上的應 用程式。

2)依賴其它架構:

4)重要知識點:

①工作機制詳解

(0)mr程式提交到客戶端所在的節點。

(2)rm將該應用程式的資源路徑返回給yarnrunner。

(3)該程式將執行所需資源提交到hdfs上。

(5)rm將使用者的請求初始化成乙個task。

(6)其中乙個nodemanager領取到task任務。

(8)container從hdfs上拷貝資源到本地。

(10)rm將執行maptask任務分配給另外兩個nodemanager,另兩個nodemanager分別領取任務並建立容器。

(11)mr向兩個接收到任務的nodemanager傳送程式啟動指令碼,這兩個nodemanager分別啟動maptask,maptask對資料分割槽排序。

(13)reduce task向maptask獲取相應分割槽的資料。

(14)程式執行完畢後,mr會向rm申請登出自己。

②作業提交全過程詳解

(1)作業提交

第0步:client呼叫job.waitforcompletion方法,向整個集群提交mapreduce作業。

第1步:client向rm申請乙個作業id。

第2步:rm給client返回該job資源的提交路徑和作業id。

第3步:client提交jar包、切片資訊和配置檔案到指定的資源提交路徑。

(2)作業初始化

第5步:當rm收到client的請求後,將該job新增到容量排程器中。

第6步:某乙個空閒的nm領取到該job。

(3)任務分配

第10步:rm將執行maptask任務分配給另外兩個nodemanager,另兩個nodemanager分別領取任務並建立容器。

(4)任務執行

第11步:mr向兩個接收到任務的nodemanager傳送程式啟動指令碼,這兩個nodemanager分別啟動maptask,maptask對資料分割槽排序。

第13步:reduce task向maptask獲取相應分割槽的資料。

第14步:程式執行完畢後,mr會向rm申請登出自己。

(5)進度和狀態更新

yarn中的任務將其進度和狀態(包括counter)返回給應用管理器, 客戶端每秒(通過mapreduce.client.progressmonitor.pollinterval設定)向應用管理        器請求進度更新, 展示給使用者。

(6)作業完成

除了向應用管理器請求作業進度外, 客戶端每5分鐘都會通過呼叫waitforcompletion()來檢查作業是否完成。時間間隔可以通過        mapreduce.client.completion.pollinterval來設定。作業完成之後, 應用管理器和container會清理工作狀態。作業的資訊會被作業歷史伺服器儲存以備之後使用者    核查。

③  任務的推測執行

執行推測任務的前提條件

(1)每個task只能有乙個備份任務;

(2)當前job已完成的task必須不小於0.05(5%)

(3)開啟推測執行引數設定。hadoop2.7.2 mapred-site.xml檔案中預設是開啟的

Hadoop生態之Yarn知識點總結

乙個集群active狀態的rm只有乙個,負責整個集群的資源管理和排程 1 定期向rm匯報本節點的資源使用請求和各個container的執行狀態 2 接收並處理rm的container啟停的各種命令 3 單個節點的資源管理和任務管理 整個集群中有n個,負責單個節點的資源管理和使用以及task的運 況 ...

大資料 YARN知識點簡介

系列文章 大資料 hadoop知識點簡介 大資料 yarn知識點簡介 大資料 spark知識點簡介 mapreduce 1.x存在的問題 主節點jobtracker帶多個幹活的從節點tasktracker,典型的一對多架構。客戶端先提交mapreduce作業到jobtracker,然後jobtrac...

知識點總結

1,迴圈中的中斷 continue 跳出此次迴圈,繼續for迴圈 break 跳出當前for迴圈 return 跳出當前方法 2,字串的操作 componentseparatedbystring stringbyreplacingoccurencesofstring withstring iskin...