hadoop之MapReduce執行流程

2022-08-31 21:54:27 字數 1477 閱讀 8159

mapreduce執行流程

1:執行mapred程式;(不是hadoop節點也可以提交程式)

2、本次執行將生成乙個job,於是jobclient向jobtracker(協調作業執行)申請乙個jobid以標識這個job;

3、jobclient將job所需要的資源提交到hdfs中乙個以jobid命名的目錄中。這些資源包括jar包、配置檔案、

inputsplit、等;

4:jobclient向jobtracker提交這個job;

5:jobtracker初始化這個job;

6:jobtracker從hdfs獲取這個job的split等資訊;

7:jobtracker向tasktracker分配任務;(心跳正常)

9:tasktracker開啟乙個新的jvm;

10:tasktracker用新的jvm來執行maptask或reducetask;此條圖示

我們下面模擬乙個mapreduce任務,解釋maptask和reducetask

1)乙個檔案file.txt;

2)儲存file.txt檔案到hdfs;

3) 統計file.txt檔案裡面」refund」個數;

1:client要計算 refund要出現多少次

2:job tracker 根據namenode發現file.txt有三塊,分別在datanode 1,2,5上面

3:執行task任務

map task(本地沒有檔案塊)

1:client要計算 refund要出現多少次

2:job tracker 根據namenode發現file.txt有三塊,分別在datanode 1,2,9上面,但是發現dn1

上面沒有bolck則在同機架上尋找block

3:執行task任務

1:maptask輸出資料到reducetask

2:reducetask將資料輸出到hdfs

hadoop批量計算框架 MapReduce

結合自身的經驗記錄,mapreduce中的一些知識點以及乙個wordcount小實踐 核心思想 分而治之 map程式 需要根據自己的需求開發 shuffle 緩衝區大小設定 core site.xml設定為100m io.file.buffer.size 100000000 以位元組為單位 hdfs...

Hadoop的分布式計算 MapReduce

什麼是mapreduce?你想數出一摞牌中有多少張黑桃。直觀方式是一張一張檢查並且數出有多少張是黑桃。mapreduce方法則是 1.給在座的所有玩家中分配這摞牌 2.讓每個玩家數自己手中的牌有幾張是黑桃,然後把這個數目匯報給你 3.你把所有玩家告訴你的數字加起來,得到最後的結論 1 mapredu...

Hadoop基本原理之一 MapReduce

1 為什麼需要hadoop 目前,一塊硬碟容量約為1tb,讀取速度約為100m s,因此完成一塊硬碟的讀取需時約2.5小時 寫入時間更長 若把資料放在同一硬碟上,且全部資料均需要同乙個程式進行處理,此程式的處理時間將主要浪費在i o時間上。在過去幾十年,硬碟的讀取速度並未明顯增長,而網路傳輸速度此飛...