版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。 https://blog.csdn.net/qq1010885678/article/details/44657537
(1).用戶端送出一個mr的jar包給JobClient(送出方式:hadoop jar ...)
(2).JobClient通過RPC和JobTracker進行通信,傳回一個存放jar包的位址(HDFS)和jobId
(3).client将jar包寫入到HDFS當中(path = hdfs上的位址 + jobId)
(4).開始送出任務(任務的描述資訊,不是jar, 包括jobid,jar存放的位置,配置資訊等等)
(5).JobTracker進行初始化任務
(6).讀取HDFS上的要處理的檔案,開始計算輸入分片,每一個分片對應一個MapperTask
(7).TaskTracker通過心跳機制領取任務(任務的描述資訊)
(8).下載下傳所需的jar,配置檔案等
(9).TaskTracker啟動一個java child子程序,用來執行具體的任務(MapperTask或ReducerTask
)
(10).将結果寫入到HDFS當中