




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第六章分布式計算框架MapReduce《大數(shù)據(jù)技術(shù)基礎(chǔ)教程》學(xué)習(xí)目標(biāo)/Target了解MapReduce簡介
理解MapReduce計算模型理解MapReduce工作原理掌握MapReduce編程實踐章節(jié)概述/
SummaryMapReduce是Hadoop的一個核心組成框架,使用該框架編寫的應(yīng)用程序能夠以一種可靠的、容錯的方式并行處理大型集群(數(shù)千個節(jié)點)上的大量數(shù)據(jù)(TB級別以上),也可以對大數(shù)據(jù)進行加工、挖掘和優(yōu)化等處理。目錄/Contents010203MapReduce簡介MapReduce計算模型MapReduce工作原理04MapReduce編程實踐MapReduce簡介11.1MapReduce簡介Hadoop的MapReduce核?技術(shù)起源于?歌在2004年發(fā)表的關(guān)于MapReduce系統(tǒng)的論?介紹。Hadoop實現(xiàn)了Google的MapReduce編程模型,提供了簡單易用的編程接口,也提供了它自己的分布式文件系統(tǒng)HDFS,與Google不同的是,Hadoop是開源的,任何人都可以使用這個框架來進行并行編程。MapReduce將復(fù)雜的、運行于大規(guī)模集群上的并行計算過程高度地抽象到了兩個函數(shù):Map和Reduce。概念“Map(映射)”和“Reduce(歸約)”,以及它們的主要思想,都是從函數(shù)式編程語言里借來的,同時包含了從矢量編程語言里借來的特性。MapReduce計算模型22.1MapReduce計算模型在Hadoop中,用于執(zhí)行計算任務(wù)(MapReduce任務(wù))的機器有兩個角色:一個是JobTracker,一個是TaskTracker,前者用于管理和調(diào)度工作,后者用于執(zhí)行工作。每次計算任務(wù)都可以分為兩個階段,Map階段和Reduce階段。其中,Map階段接收一組鍵值對模式<key,Value>的輸入并產(chǎn)生同樣是鍵值對模式的另一個或一批<key,Value>的中間輸出;Reduce階段負(fù)責(zé)接收Map產(chǎn)生的中間輸出<key,Value>,然后對這個結(jié)果進行處理并輸出結(jié)果。2.1MapReduce計算模型MapReduce工作原理33.11.x架構(gòu)MapReduce1.x采用Master/Slave架構(gòu),由全局唯一的Jobtracker和多個TaskTacker組成,并且在Client中提供一系列的api供編程和管理使用。3.11.x架構(gòu)MapReduce的完整流程為:第一步:讀取文件,解析成為<key,value>對;第二步:自定義map邏輯接收<k1,v1>,轉(zhuǎn)換成為新的<k2,v2>輸出;第三步:分區(qū)Partition。將相同key的數(shù)據(jù)發(fā)送到同一個reduce里面去;第四步:排序,map階段分區(qū)內(nèi)的數(shù)據(jù)進行排序;第五步:combiner。調(diào)優(yōu)過程,對數(shù)據(jù)進行map階段的合并;第六步:將環(huán)形緩沖區(qū)的數(shù)據(jù)進行溢寫到本地磁盤小文件;第七步:歸并排序,對本地磁盤溢寫小文件進行歸并排序;3.11.x架構(gòu)MapReduce的完整流程為:第九步:reduceTask啟動線程拉取屬于自己分區(qū)的數(shù)據(jù);第十步:從mapTask拉取回來的數(shù)據(jù)繼續(xù)進行歸并排序;第十一步:進行g(shù)roupingComparator分組操作;第十二步:調(diào)用reduce邏輯,寫出數(shù)據(jù);第十三步:通過outputFormat進行數(shù)據(jù)輸出,寫到文件,一個reduceTask對應(yīng)一個文件。3.22.x架構(gòu)(YARN架構(gòu))3.22.x架構(gòu)(YARN架構(gòu))①用戶編寫客戶端應(yīng)用程序,向YARN提交應(yīng)用程序,提交的內(nèi)容包括ApplicationMaster程序、啟動ApplicationMaster的命令、用戶程序等。②YARN中的ResourceManager負(fù)責(zé)接收和處理來自客戶端的請求。接到客戶端應(yīng)用程序請求后,ResourceManager里面的調(diào)度器會為應(yīng)用程序分配一個容器。同時,ResourceManager的應(yīng)用程序管理器會與該容器所在的NodeManager通信,為該應(yīng)用程序在該容器中啟動一個ApplicationMaster(即圖6-5中的“MRAppMstr”)。③ApplicationMaster被創(chuàng)建后會首先向ResourceManager注冊,從而使得用戶可以通過ResourceManager來直接查看應(yīng)用程序的運行狀態(tài)。接下來的步驟4~7是具體的應(yīng)用程序執(zhí)行步驟。3.22.x架構(gòu)(YARN架構(gòu))④ApplicationMaster采用輪詢的方式通過RPC協(xié)議向ResourceManager申請資源。⑤ResourceManager以“容器”的形式向提出申請的ApplicationMaster分配資源,一旦ApplicationMaster申請到資源后,就會與該容器所在的NodeManager進行通信,要求它啟動任務(wù)。⑥當(dāng)ApplicationMaster要求容器啟動任務(wù)時,它會為任務(wù)設(shè)置好運行環(huán)境(包括環(huán)境變量、JAR包、二進制程序等),然后將任務(wù)啟動命令寫到一個腳本中,最后通過在容器中運行該腳本來啟動任務(wù)。⑦各個任務(wù)通過某個RPC協(xié)議向ApplicationMaster匯報自己的狀態(tài)和進度,讓ApplicationMaster可以隨時掌握各個任務(wù)的運行狀態(tài),從而可以在任務(wù)失敗時重新啟動任務(wù)。3.22.x架構(gòu)(YARN架構(gòu))⑧應(yīng)用程序運行完成后,ApplicationMaster向ResourceManager的應(yīng)用程序管理器注銷并關(guān)閉自己。若ApplicationMaster因故失敗,ResourceManager中的應(yīng)用程序管理器會監(jiān)測到失敗的情形,然后將其重新啟動,直到所有的任務(wù)執(zhí)行完畢。MapReduce編程實踐44.1MapReduce程序編寫步驟(1)Maven項目的pom.xml文件的配置(2)新建Mapper類4.1MapReduce程序編寫步驟(3)新建Reducer類(4)新建程序執(zhí)行主類(5)提交程序到集群4.2MapReduce編寫單詞統(tǒng)計程序4.2MapReduce編寫單詞統(tǒng)計程序4.2MapReduce編寫單詞統(tǒng)計程序4.2MapReduce編寫單詞統(tǒng)計程序4.2MapReduce編寫單詞統(tǒng)計程序4.2MapReduce編寫單詞統(tǒng)計程序本章小結(jié)本章主要介紹了分布式計算框架MapReduce,它是Hadoop的一個核心組成框架,概念“Map(映射)”和“Reduce(歸約)”以及它們的主要思想,都是從函數(shù)式編程語言里借用而來的,同時也包含了從矢量編程語言里借來的特性。MapReduce極大地方便了編程
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版房東租房協(xié)議書合同范例
- 二零二五版質(zhì)量檢驗委托合同
- 環(huán)境教育在提升公眾環(huán)保意識中的作用研究報告
- 2025年中國鼠標(biāo)遙控車行業(yè)市場調(diào)查研究及發(fā)展戰(zhàn)略研究報告
- 2025年中國車聯(lián)網(wǎng)導(dǎo)航行業(yè)市場深度分析及發(fā)展前景預(yù)測報告
- 中國電力聯(lián)接產(chǎn)品行業(yè)市場調(diào)查研究及投資戰(zhàn)略研究報告
- 2025年中國創(chuàng)意設(shè)計行業(yè)市場運營趨勢分析及投資潛力研究報告
- 2025年中國展覽展示設(shè)計行業(yè)市場發(fā)展監(jiān)測及投資潛力預(yù)測報告
- 欣達松行業(yè)深度研究分析報告(2024-2030版)
- 血壓儀項目可行性研究報告
- 獎學(xué)金評定模型
- 室外管網(wǎng)工程-工程施工進度計劃表
- 學(xué)生發(fā)展核心素養(yǎng)與語文學(xué)科核心素養(yǎng)(王光龍老師)
- 耳部銅砭刮痧技術(shù)評分標(biāo)準(zhǔn)
- 向拉齊尼巴依卡同志學(xué)習(xí)ppt
- 竣工環(huán)境保護驗收意見模板
- 英語詞匯的奧秘知到章節(jié)答案智慧樹2023年武漢科技大學(xué)
- 2022年初中歷史課程標(biāo)準(zhǔn)電子版
- 腔內(nèi)心電圖經(jīng)外周中心靜脈導(dǎo)管picc尖端定位技術(shù)
- 白酒基礎(chǔ)知識考試題庫300題(含單選、多選、判斷)
- The+Little+Woman英文名著《小婦人》整本書閱讀指導(dǎo)課件
評論
0/150
提交評論