Hadoop學習筆記 --- MapReduce執行流程與工作原理

首先MapReduce是面向大數據的並行處理計算模型、離線計算框架。

 

一、執行流程如下:

 

 

 

  • Job Client:運行於Client node,負責將MapReduce程序打包成Jar包上傳到HDFS,並把Jar路徑傳遞給Job Tracker, 由於Jobtracker進行任務的分配和監控。

  • Job Tracker: 運行於Name Node,負責接收Job Client提交的Job,調度Job的每一個子Task運行於Task Tracker上,並監控它們,如果發現失敗的Task就重新運行它。

  • Task Tracker: 運行於Data Node, 負責主動於JobTracker通信,接收作業,並直接執行每一個任務。

  • HDFS:用來與其它實體間共享作業文件。

 

上圖的執行流程分別是:

1.Job Client 通過RPC協議向JobTracker請求一個新的應用ID,用於MapReduce作業的ID;

2.Job Tracker檢查作業的輸出說明。例如,如果沒有指定輸出目錄或目錄已存在,作業就不提交,錯誤拋回給Job Client,否則,返回新的作業ID,給Job Client;

3.Job Client將作業所需的資源(包括作業JAR文件、配置文件和計算所得輸入分片)復到以及作業ID命名的HDFS目錄中。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章