大資料IMF-L38-MapReduce內幕解密聽課筆記及總結

來源:互聯網
上載者:User

標籤:大資料   hadoop   

本期內容:

1 MapReduce架構解密

2 MapReduce運行叢集研究

3 通過Java編程操作MapReduce實戰


Hadoop從2。0開始就已經必須運行在 Yarn上面了,1.0時根本不關心Yarn。

現在是 MR,也是講Yarn的,而且已經是 基礎入門階段。零基礎已經過去了。


明天開始 - 20個左右的MapReduce代碼的集合講解


一:基於Yarn的MapReduce架構

1.MR代碼程式是基於實現Mapper和Reducer兩大階段構成的,其中Mapper是把一個計算任務分解成很多

小任務進行並行計算,Reducer是進行最後的統計的工作的;


2.Hadoop 2.x開始是基於Yarn啟動並執行。


Yarn是管理叢集的所有資源的(如記憶體和CPU),ResourceManager,每個節點上安排了一上JVM進程,NodeManager,接收要求用Container方式來包裹這些資源,當RM接收到作業請求時,


3.當ResourceManager接收到Client提交的請求的程式的時候會根據叢集資源的狀況在某個NodeManager所在的節點上命令NodeManager啟動該程式的第一個Container,該Container就是程式的ApplicationMaster,負責程式的任務調度的執行過程,ApplicationManager轉過來向ResourceManager註冊自己,註冊之後會向ReourceManager申請具體的Container計算資源。

4.如何街道一個程式中的ApplicationMaster需要多少個Container呢?

 Application在啟動時會運行程式的Main方法,該方法中會有資料的輸入和相關的配置,通過這些內容就可以知道需要多少Container;


(container是一個單位的電腦資源,根據用戶端請求的計算,叢集會解析計算job,計算結果包含需要的contain資源)

Application要運行Main方法,知道剖析器有多少個分區,多少個分區對應Container,再考量其他資源,如Shuffle等再分配一些資源。


5.MapReduce運行在Yarn上的總結

主從結構

主節點,只有一個: ResourceManager

控制節點,每個Job都有一個MRAppMaster

從節點,有很多個: YarnChild

ResourceManager負責:

接收客戶提交的計算任務

把Job分給MRAppMaster執行

監控MRAppMaster的執行情況

MRAppMaster負責:

負責一個Job執行的任務調度

把Job分給YarnChild執行

監控YarnChild的執行情況

YarnChild負責:

執行MRAppMaster分配的計算任務


RM生產環境中是要做HA的


6.Hadoop MapReduce中的 MRAppMaster,相當於Spark中的Driver,Hadoop MapReduce中的YarnChildren相當於Spark中的CoarseGrainedExecutorBackend;


(Hadoop相對於Spark資源的損耗相當多)

本文出自 “在雲端” 部落格,請務必保留此出處http://ymzhang.blog.51cto.com/3126300/1741453

大資料IMF-L38-MapReduce內幕解密聽課筆記及總結

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.