国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六)

這篇具有很好參考價(jià)值的文章主要介紹了大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六)。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

目錄

一、分布式計(jì)算

二、分布式資源調(diào)度

2.1 什么是分布式資源調(diào)度

2.2 yarn的架構(gòu)

2.2.1 核心架構(gòu)

2.2.2 輔助架構(gòu)


前面我們提到了Hadoop的三大核心功能:分布式存儲、分布式計(jì)算和資源調(diào)度,分別由Hadoop的三大核心組件可以擔(dān)任。

即HDFS是分布式存儲組件,MapReduce是分布式計(jì)算組件,Yarn則是資源調(diào)度組件。

本章我們就分布式計(jì)算和資源調(diào)度進(jìn)行簡單講解。

一、分布式計(jì)算

那么什么是分布式計(jì)算呢?

以前我們開發(fā)過程中,要進(jìn)行計(jì)算通常都是在一臺電腦上完成的。這從某種意義上說,計(jì)算的數(shù)據(jù)量不算特別大。單臺機(jī)器能夠勝任。

但是假如現(xiàn)在有一個(gè)1PB的數(shù)據(jù)需要進(jìn)行計(jì)算,那么單臺機(jī)器能完成嗎?先不說存儲的事情,就算能完成,拿現(xiàn)在最強(qiáng)性能的cpu,那也要計(jì)算到猴年馬月了。

所以單臺不夠,我們就多臺機(jī)器同時(shí)計(jì)算,這就衍生出了分布式計(jì)算。

分布式計(jì)算的兩種模式

分散匯總模式

1. 將數(shù)據(jù)分片,多臺服務(wù)器各自負(fù)責(zé)一部分?jǐn)?shù)據(jù)處理

2. 然后將各自的結(jié)果,進(jìn)行匯總處理

3. 最終得到想要的計(jì)算結(jié)果

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

中心調(diào)度->步驟執(zhí)行模式

中心調(diào)度、步驟執(zhí)行模式?

1. 由一個(gè)節(jié)點(diǎn)作為中心調(diào)度管理者

2. 將任務(wù)劃分為幾個(gè)具體步驟

3. 管理者安排每個(gè)機(jī)器執(zhí)行任務(wù)

4. 最終得到結(jié)果數(shù)據(jù)

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

中心調(diào)度->步驟執(zhí)行模式

MapReduce

MapReduce分散->匯總模式的分布式計(jì)算框架,可供開發(fā)人員開發(fā)相關(guān)程序進(jìn)行分布式數(shù)據(jù)計(jì)算。

MapReduce提供了2個(gè)編程接口:Map和Reduce

Map功能接口提供了分散的功能, 由服務(wù)器分布式對數(shù)據(jù)進(jìn)行處理

Reduce功能接口提供了匯總(聚合)的功能,將分布式的處理結(jié)果匯總統(tǒng)計(jì)

用戶如需使用MapReduce框架完成自定義需求的程序開發(fā)。只需要使用Java、Python等編程語言,實(shí)現(xiàn)Map Reduce功能接口即可。

注:MapReduce盡管可以通過JavaPython等語言進(jìn)行程序開發(fā),但當(dāng)下年代基本沒人會寫它的代碼了,因?yàn)樘^時(shí)了。?? 盡管MapReduce很老了,但現(xiàn)在仍舊活躍在一線,主要是Apache Hive框架非?;?,而Hive底層就是使用的MapReduce。 所以對于MapReduce的代碼開發(fā),課程會簡單擴(kuò)展一下,但不會深入講解,對MapReduce的底層原理會放在Hive之后,基于Hive做深入分析。

MapReduce的運(yùn)行機(jī)制:

  • 將要執(zhí)行的需求,分解為多個(gè)Map TaskReduce Task
  • 將Map Task Reduce Task分配到對應(yīng)的服務(wù)器去執(zhí)行

二、分布式資源調(diào)度

MapReduce是基于YARN運(yùn)行的,即沒有YARN”無法運(yùn)行MapReduce程序。

這里“無法”是加了引號的,這是因?yàn)榻^大多數(shù)的場景都是通過yarn運(yùn)行MapReduce任務(wù)的,不是說沒有yarn完全不行,而是非常不方便。離開了它需要我們自行管理資源,自行管理就顯得麻煩了。所以95%以上的用戶都會選擇使用YARN運(yùn)行MapReduce任務(wù)。

2.1 什么是分布式資源調(diào)度

那么Yarn作為分布式資源調(diào)度組件,它具體有啥作用呢?換句話說什么是資源調(diào)度? 我們?yōu)槭裁葱枰Y源調(diào)度?

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

服務(wù)器會運(yùn)行多個(gè)程序, 每個(gè)程序?qū)Y源(CPU內(nèi)存等)的使用都不同

程序沒有節(jié)省的概念,有多少就會用多少。

所以,為了提高資源利用率,進(jìn)行調(diào)度就非常有必要了。

YARN 管控整個(gè)集群的資源進(jìn)行調(diào)度, 那么應(yīng)用程序在運(yùn)行時(shí),就是在YARN的監(jiān)管(管理)下去運(yùn)行的。

這就像:全部資源都是公司(YARN)的,由公司分配給個(gè)人(具體的程序)去使用。比如,一個(gè)具體的MapReduce程序。 我們知道, MapReduce程序會將任務(wù)分解為若干個(gè)Map任務(wù)和Reduce任務(wù)。假設(shè),有一個(gè)MapReduce程序, 分解了3個(gè)Map任務(wù),和1個(gè)Reduce任務(wù),那么如何在YARN的監(jiān)管(管理)下運(yùn)行呢?

我們直接看下面的動圖:

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

2.2 yarn的架構(gòu)

yarn分為核心架構(gòu)和輔助架構(gòu)

2.2.1 核心架構(gòu)

類比于HDFS:

HDFS, 主從架構(gòu),有2個(gè)角色

  • 主(Master)角色:NameNode
  • 從(Slave角色 DataNode

YARN,主從架構(gòu),有2個(gè)角色?

  • 主(Master)角色:ResourceManager
  • 從(Slave) 角色NodeManager

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

ResourceManager整個(gè)集群的資源調(diào)度者, 負(fù)責(zé)協(xié)調(diào)調(diào)度各個(gè)程序所需的資源

NodeManager單個(gè)服務(wù)器的資源調(diào)度者,負(fù)責(zé)調(diào)度單個(gè)服務(wù)器上的資源提供給應(yīng)用程序使用。

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

如何實(shí)現(xiàn)服務(wù)器上精準(zhǔn)分配如下的硬件資源呢?

答:開辟的空間,稱之為:容器

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

2.2.2 輔助架構(gòu)

Yarn的架構(gòu)中處理核心角色,ResourceManager和NodeManager外,還可以搭配2個(gè)輔助角色使得YARN集群運(yùn)行更加穩(wěn)定。

代理服務(wù)器(ProxyServer)Web Application Proxy Web應(yīng)用程序代理

歷史服務(wù)器(JobHistoryServer) 應(yīng)用程序歷史信息記錄服務(wù)

代理服務(wù)器

代理服務(wù)器,即Web應(yīng)用代理是 YARN 的一部分。默認(rèn)情況下,它將作為資源管理器(RM)的一部分運(yùn)行,但是可以配置為在獨(dú)立模式下運(yùn)行。使用代理的原因是為了減少通過 YARN 進(jìn)行基于網(wǎng)絡(luò)的攻擊的可能性。

這是因?yàn)椋?/span> YARN在運(yùn)行時(shí)會提供一個(gè)WEB UI站點(diǎn)(同HDFSWEB UI站點(diǎn)一樣)可供用戶在瀏覽器內(nèi)查看YARN的運(yùn)行信息。

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

對外提供WEB 站點(diǎn)會有安全性問題, 而代理服務(wù)器的功能就是最大限度保障對WEB UI的訪問是安全的。

比如:

  • 警告用戶正在訪問一個(gè)不受信任的站點(diǎn)
  • 剝離用戶訪問的Cookie
  • 開啟代理服務(wù)器,可以提高YARN在開放網(wǎng)絡(luò)中的安全性 (但不是絕對安全只能是輔助提高一些)

代理服務(wù)器默認(rèn)集成在了ResourceManager

也可以將其分離出來單獨(dú)啟動,如果要分離代理服務(wù)器

1. yarn-site.xml中配置 yarn.web-proxy.address 參數(shù)即可 (部署環(huán)節(jié)會使用到)

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

2. 并通過命令啟動它即可 $HADOOP_YARN_HOME/sbin/yarn-daemon.sh start proxyserver(部署環(huán)節(jié)會使用到)

歷史服務(wù)器

歷史服務(wù)器的功能很簡單: 記錄歷史運(yùn)行的程序的信息以及產(chǎn)生的日志提供WEB UI站點(diǎn)供用戶使用瀏覽器查看。

程序看日志不是日常操作嗎? 為何需要一個(gè)單獨(dú)的歷史服務(wù)器?

回答這個(gè)問題要從YARN的運(yùn)行機(jī)制說起。

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六),大數(shù)據(jù)技術(shù),大數(shù)據(jù),hadoop,mapreduce,java

具體如何使用,我們將在下一章節(jié)(yarn部署)講解。?文章來源地址http://www.zghlxwxcb.cn/news/detail-707453.html

到了這里,關(guān)于大數(shù)據(jù)技術(shù)之Hadoop:MapReduce與Yarn概述(六)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 05.hadoop上課筆記之hadoop5mapreduce和yarn

    1.yarn(yet another resource negotiator)分布式資源管理系統(tǒng) 1.作業(yè)(job)包含多個(gè)任務(wù)(task) 2.container封裝了cpu的各種資源 2.yarn的結(jié)構(gòu) 1.ResouceManager(全局資源管理) 系統(tǒng)資源管理分配 處理客戶端請求,健康檢查namenode 2.nodemanager(當(dāng)前節(jié)點(diǎn)資源管理) 3.applicationMaster(發(fā)送心跳RM.二次分配資源給

    2024年02月08日
    瀏覽(23)
  • 【Hadoop】- MapReduce概述[5]

    【Hadoop】- MapReduce概述[5]

    目錄 前言 一、分布式計(jì)算框架 - MapReduce 二、MapReduce執(zhí)行原理 MapReduce是一種 分布式計(jì)算框架 ,由Google開發(fā)。它的設(shè)計(jì)目標(biāo)是將大規(guī)模數(shù)據(jù)集的處理和生成任務(wù)分布到一個(gè)由廉價(jià)計(jì)算機(jī)組成的集群中。 在MapReduce模型中,輸入數(shù)據(jù)被分割成若干小塊,并在集群中的多個(gè)節(jié)點(diǎn)上并

    2024年04月25日
    瀏覽(23)
  • Hadoop之MapReduce概述

    Hadoop之MapReduce概述

    MapReduce定義 MapReduce是一個(gè)分布式運(yùn)算程序的編程框架,是用戶開發(fā)“基于Hadoop的數(shù)據(jù)分析應(yīng)用”的核心框架。 MapReduce核心功能是將用戶編寫的業(yè)務(wù)邏輯代碼和自帶默認(rèn)組件整合成一個(gè)完整的分布式運(yùn)算程序,并發(fā)運(yùn)行在一個(gè)Hadoop集群上。 MapReduce優(yōu)缺點(diǎn) 優(yōu)點(diǎn) 1)MapReduce易于編

    2024年02月08日
    瀏覽(27)
  • Hadoop3.0大數(shù)據(jù)處理學(xué)習(xí)3(MapReduce原理分析、日志歸集、序列化機(jī)制、Yarn資源調(diào)度器)

    Hadoop3.0大數(shù)據(jù)處理學(xué)習(xí)3(MapReduce原理分析、日志歸集、序列化機(jī)制、Yarn資源調(diào)度器)

    前言:如果想知道一堆牌中有多少張紅桃,直接的方式是一張張的檢查,并數(shù)出有多少張紅桃。 而MapReduce的方法是,給所有的節(jié)點(diǎn)分配這堆牌,讓每個(gè)節(jié)點(diǎn)計(jì)算自己手中有幾張是紅桃,然后將這個(gè)數(shù)匯總,得到結(jié)果。 官方介紹:MapReduce是一種分布式計(jì)算模型,由Google提出,

    2024年02月08日
    瀏覽(45)
  • Hadoop入門學(xué)習(xí)筆記——四、MapReduce的框架配置和YARN的部署

    Hadoop入門學(xué)習(xí)筆記——四、MapReduce的框架配置和YARN的部署

    視頻課程地址:https://www.bilibili.com/video/BV1WY4y197g7 課程資料鏈接:https://pan.baidu.com/s/15KpnWeKpvExpKmOC8xjmtQ?pwd=5ay8 Hadoop入門學(xué)習(xí)筆記(匯總) 本次YARN的部署結(jié)構(gòu)如下圖所示: 當(dāng)前,共有三臺服務(wù)器(虛擬機(jī))構(gòu)成集群,集群規(guī)劃如下所示: 主機(jī) 部署的服務(wù) node1 ResourceManager、N

    2024年02月04日
    瀏覽(17)
  • Hadoop——HDFS、MapReduce、Yarn期末復(fù)習(xí)版(搭配尚硅谷視頻速通)

    Hadoop——HDFS、MapReduce、Yarn期末復(fù)習(xí)版(搭配尚硅谷視頻速通)

    1.1 HDFS定義 HDFS(Hadoop Distributed File System),它是一個(gè)文件系統(tǒng),用于存儲文件,通過目錄樹來定位文件;其次, 它是分布式的 ,由很多服務(wù)器聯(lián)合起來實(shí)現(xiàn)其功能,集群中的服務(wù)器有各自的角色。 HDFS的使用場景 :適合一次寫入,多次讀出的場景。一個(gè)文件經(jīng)過創(chuàng)建、寫入和關(guān)

    2024年01月17日
    瀏覽(21)
  • 【Hadoop_06】MapReduce的概述與wc案例

    【Hadoop_06】MapReduce的概述與wc案例

    MapReduce是一個(gè) 分布式運(yùn)算程序 的編程框架,是用戶開發(fā)“基于Hadoop的數(shù)據(jù)分析應(yīng)用”的核心框架。 MapReduce核心功能是 將用戶編寫的業(yè)務(wù)邏輯代碼 和 自帶默認(rèn)組件 整合成一個(gè)完整的 分布式運(yùn)算程序 ,并發(fā)運(yùn)行在一個(gè)Hadoop集群上。 1)MapReduce易于編程 它簡單的實(shí)現(xiàn)一些接口

    2024年02月04日
    瀏覽(58)
  • 23、hadoop集群中yarn運(yùn)行mapreduce的內(nèi)存、CPU分配調(diào)度計(jì)算與優(yōu)化

    23、hadoop集群中yarn運(yùn)行mapreduce的內(nèi)存、CPU分配調(diào)度計(jì)算與優(yōu)化

    1、hadoop3.1.4簡單介紹及部署、簡單驗(yàn)證 2、HDFS操作 - shell客戶端 3、HDFS的使用(讀寫、上傳、下載、遍歷、查找文件、整個(gè)目錄拷貝、只拷貝文件、列出文件夾下文件、刪除文件及目錄、獲取文件及文件夾屬性等)-java 4、HDFS-java操作類HDFSUtil及junit測試(HDFS的常見操作以及H

    2024年02月07日
    瀏覽(24)
  • 【hadoop運(yùn)維】running beyond physical memory limits:正確配置yarn中的mapreduce內(nèi)存

    在hadoop3.0.3集群上執(zhí)行hive3.1.2的任務(wù),任務(wù)提交時(shí)報(bào)如下錯(cuò)誤: Application application_1409135750325_48141 failed 2 times due to AM Container for appattempt_1409135750325_48141_000002 exited with exitCode: 143 due to: Container [pid=4733,containerID=container_1409135750325_48141_02_000001] is running beyond physical memory limits. Curren

    2024年02月09日
    瀏覽(21)
  • 【云計(jì)算與大數(shù)據(jù)技術(shù)】Hadoop MapReduce的講解(圖文解釋,超詳細(xì)必看)

    【云計(jì)算與大數(shù)據(jù)技術(shù)】Hadoop MapReduce的講解(圖文解釋,超詳細(xì)必看)

    MapReduce 是一種分布式計(jì)算框架,能夠處理大量數(shù)據(jù) ,并提供容錯(cuò) 、可靠等功能 , 運(yùn)行部署在大規(guī)模計(jì)算集群中,MapReduce計(jì)算框架采用主從架構(gòu),由 Client、JobTracker、TaskTracker組成 用戶編寫 MapReduce程序,通過Client提交到JobTracker JobTracker負(fù)責(zé)管理運(yùn)行的 TaskTracker節(jié)點(diǎn);負(fù)責(zé)Job的調(diào)度

    2024年02月13日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包