1. 程式人生 > >大資料06-MapTask、Shuffle、ReduceTask,yarn工作機制

大資料06-MapTask、Shuffle、ReduceTask,yarn工作機制

一、MapReduce整個工作流程:

 

二、 yarn基本架構和工作機制

一、yarn基本架構

 

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

(1)Yarnrunner 向 Resourcemanager 申請一個 Application。

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

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

(4)程式資源提交完畢後,申請執行 mrAppMaster。

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

(6)其中一個 NodeManager 領取到 task 任務。

(7)該 NodeManager 建立容器 Container,併產生 MRAppmaster。

(8)Container 從 HDFS 上拷貝資源到本地。

(9)MRAppmaster 向 RM 申請執行 maptask 資源。

(10)RM 將執行 maptask 任務分配給另外兩個 NodeManager,另兩個 NodeManager 分

別領取任務並建立容器。

(11)MR 向兩個接收到任務的 NodeManager 傳送程式啟動指令碼,這兩個 NodeManager

分別啟動 maptask,maptask 對資料分割槽排序。

(12)MrAppMaster 等待所有 maptask 執行完畢後,向 RM 申請容器,執行 reduce task。

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

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