二期線上班課程二課件3、mapreduce工作原理剖析_第1頁
二期線上班課程二課件3、mapreduce工作原理剖析_第2頁
二期線上班課程二課件3、mapreduce工作原理剖析_第3頁
二期線上班課程二課件3、mapreduce工作原理剖析_第4頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Hadoop基礎(chǔ)篇講師:Cloudy(北風(fēng)網(wǎng) )3、Mapreduce工作原理剖析什么是Mapreduce?MapReduce, MR 是一種編程模型,用于大規(guī)模數(shù)據(jù)集(大于1TB)的并行運(yùn)算(批處理)。提供一套簡單的API,開發(fā)人員可以基于API開發(fā)應(yīng)用程序,進(jìn)而利用分布式平臺進(jìn)行數(shù)據(jù)處理。Mapreduce架構(gòu)圖Master/Slave 架構(gòu)主節(jié)點(diǎn)JobTracker,管理Job,不一定必須運(yùn)行在Namenode上,可以運(yùn)行在任何節(jié)點(diǎn)上。通常不和NN放在一臺機(jī)器上。子節(jié)點(diǎn)TaskTracker,執(zhí)行task增加TaskTracker節(jié)點(diǎn)數(shù),達(dá)到水平擴(kuò)容(HDFS是增加Datanode節(jié)點(diǎn)數(shù)

2、進(jìn)行擴(kuò)容),通常運(yùn)行在Datanode上。架構(gòu)圖老師學(xué)生不是平均分配調(diào)度算法:1、先進(jìn)先出 FIFO2、公平調(diào)度,最大Map數(shù)和最大Reduce數(shù)3、容量調(diào)度,資源隔離 需要3選1工作流程JobTracker 進(jìn)程單點(diǎn)。隨時作業(yè)量增大,負(fù)載增大。而NN的負(fù)載通常比較低。相當(dāng)于那個懶老師,負(fù)責(zé)接收客戶端作業(yè),分配作業(yè)給學(xué)生(TaskTracker)。JobTracker是整個MapReduce計算框架中的主服務(wù)(進(jìn)程),相當(dāng)于集群的“管理者”,負(fù)責(zé)整個集群的作業(yè)控制和資源管理。JobTracker后臺程序用來連接應(yīng)用程序與HDFS。用戶代碼提交到集群以后,由JobTracker決定哪個文件將被處

3、理,并且為 不同的task分配節(jié)點(diǎn)。同時,它還監(jiān)控所有的task,一旦某個task失敗了,JobTracker就會自動重新開啟這個task,在大多數(shù)情況下這 個task會被放在不用的節(jié)點(diǎn)上。每個Hadoop集群只有一個JobTracker,可以運(yùn)行在集群的任意節(jié)點(diǎn)上(不僅僅是Master節(jié)點(diǎn))。通常部署JobTracker的節(jié)點(diǎn),不開啟TaskTracker進(jìn)程。就像NN節(jié)點(diǎn)上不開啟Datanode進(jìn)程一樣。TaskTracker 進(jìn)程相當(dāng)于場景中的學(xué)生,負(fù)責(zé)實際干活。TaskTracker位于子節(jié)點(diǎn)(即Datanode上),獨(dú)立管理各自的task。每個TaskTracker負(fù)責(zé)獨(dú)立執(zhí)行具體的

4、task,而 JobTracker負(fù)責(zé)分配task。每個TaskTracker可并行處理多個map以及reduce任務(wù)。TaskTracker的一個重要職責(zé)就是與JobTracker交互。如果 JobTracker無法準(zhǔn)時地獲取TaskTracker提交的信息,JobTracker就判定TaskTracker已經(jīng)崩潰,并將任務(wù)分配給其他節(jié)點(diǎn)處理。Map-Reduce處理過程基于硬盤的計算,少量數(shù)據(jù)在內(nèi)存里(對內(nèi)存無壓力),hive里的mapjoin可以把數(shù)據(jù)放在內(nèi)存里處理;1、指定input目錄,作為數(shù)據(jù)源2、中間結(jié)果落地到HDFS,作為下一步數(shù)據(jù)源map key-valuereduce ke

5、y-values ,相同key的value組合在一塊 map數(shù)是有輸入目錄的文件數(shù)和文件大小決定。4個小文件和1個80M的文件(block是64M),產(chǎn)生map數(shù)6.shuffle:混淆節(jié)點(diǎn)間數(shù)據(jù)combine:相同的key進(jìn)行組合合并Reduce:key-valuesMR執(zhí)行過程Map:加載input數(shù)據(jù),通常一個文件(不足一個 Block大)起一個map線程。超過Block大的文件,會Split多個文件,起多個map線程。如Block大小是64M,一個80M的文件會起2個map。 key-value 鍵值對。Shuffle:分別在不同節(jié)點(diǎn)上的相同的key,需要合并,所以先混淆(全部數(shù)據(jù)節(jié)點(diǎn)上的input數(shù)據(jù))一下。Combine:由于相同的key需要發(fā)送到同一個reduce上,所以必須把相同的key合并。Reduce:相同的key會有同一個reduce接收和匯總,結(jié)果為key-values更詳細(xì),見 Mapreduce 數(shù)據(jù)傾斜不怕數(shù)據(jù)量大,就怕數(shù)據(jù)傾斜。MR里同一個key,只能發(fā)由同一個reduce處理。必須這樣,否則無法全局匯總。普通key的value數(shù)是100個,個別超過10萬個。數(shù)據(jù)傾斜的根本原因(面試常問):1、key分布不均衡,有的過于集中。傾斜在Reduce階段。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論