1、Hadoop 總體概述PPT課件_第1頁
1、Hadoop 總體概述PPT課件_第2頁
1、Hadoop 總體概述PPT課件_第3頁
1、Hadoop 總體概述PPT課件_第4頁
1、Hadoop 總體概述PPT課件_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、2021/3/91HadoopHadoop入門入門主講人:張冠鋒主講人:張冠鋒2021/3/92大數(shù)據(jù)入門大數(shù)據(jù)入門 以前有個國王很闊綽也很愛排場,有天他很高興想獎賞他的寵臣以前有個國王很闊綽也很愛排場,有天他很高興想獎賞他的寵臣, ,這個大臣這個大臣給國王看下面這個棋盤,給國王看下面這個棋盤, 8 8* *8 8 的方格,希望獲得在每個標(biāo)號的格子內(nèi)放米粒,的方格,希望獲得在每個標(biāo)號的格子內(nèi)放米粒,第一個格子放第一個格子放 1 1 粒米,后面的格子總是前面格子的兩倍的所有米粒。如果把整粒米,后面的格子總是前面格子的兩倍的所有米粒。如果把整個棋盤放滿,需要多少米粒?我們學(xué)過級數(shù)的話,它的推演是個

2、棋盤放滿,需要多少米粒?我們學(xué)過級數(shù)的話,它的推演是 1 + 2 + 4 + 1 + 2 + 4 + 263 263 264 264-1-1這個數(shù)字多大很多人沒印象,反正如果真的要兌現(xiàn)的話,這個這個數(shù)字多大很多人沒印象,反正如果真的要兌現(xiàn)的話,這個國家肯定是破產(chǎn)了國家肯定是破產(chǎn)了 其實把這個棋盤分成上下兩半,在上一半總共需要的米粒是其實把這個棋盤分成上下兩半,在上一半總共需要的米粒是 232, 232, 這并不這并不是個很大的數(shù),其實前幾年計算機的是個很大的數(shù),其實前幾年計算機的 32 32 位就是那么大,但下半場就完全不一位就是那么大,但下半場就完全不一樣了,這是個平方級別的樣了,這是個平方

3、級別的 scale scale2021/3/93什么是大數(shù)據(jù):什么是大數(shù)據(jù):什么樣的東西能成為數(shù)據(jù)呢?什么樣的東西能成為數(shù)據(jù)呢?電子商務(wù)方面:電子商務(wù)方面:淘寶淘寶, ,美團美團, ,京東買東西京東買東西, ,你的你的IPIP地址地址, ,商品名商品名, ,價格價格, ,快遞名快遞名, ,手機號手機號, ,收貨地址收貨地址, ,下單的時間日期等這些就是數(shù)據(jù)下單的時間日期等這些就是數(shù)據(jù)工業(yè)方面:工業(yè)方面:鋼鐵廠的日,月,年產(chǎn)量鋼鐵廠的日,月,年產(chǎn)量; ;銷量銷量; ;省,市,縣省,市,縣 銷量等這些也是數(shù)據(jù)銷量等這些也是數(shù)據(jù).2021/3/94本章要點本章要點一、一、 hadoophadoop總

4、體概述總體概述二、二、 hadoophadoop生態(tài)系統(tǒng)生態(tài)系統(tǒng)三、三、 hadoophadoop特點及工作機制特點及工作機制四、四、 hadoophadoop任務(wù)任務(wù)(job)(job)運行過程運行過程五、五、 核心進程講解核心進程講解六、六、 hadoophadoop配置文件配置文件2021/3/95Hadoop Hadoop 總體概述總體概述 HadoopHadoop是一個由是一個由ApacheApache基金會所開發(fā)的基金會所開發(fā)的分布式系統(tǒng)分布式系統(tǒng)基礎(chǔ)架構(gòu)?;A(chǔ)架構(gòu)。HadoopHadoop實現(xiàn)了一個實現(xiàn)了一個分布式文件系統(tǒng)分布式文件系統(tǒng)( (Hadoop Distributed

5、File Hadoop Distributed File System)System)簡稱簡稱HDFSHDFS。HDFSHDFS有高有高容錯性容錯性的特點,并且設(shè)計用來部署在的特點,并且設(shè)計用來部署在低廉的(低廉的(low-costlow-cost)硬件上;而且它提供高吞吐量(硬件上;而且它提供高吞吐量(high high throughputthroughput)來訪問來訪問應(yīng)用程序應(yīng)用程序的數(shù)據(jù),適合那些有著超大數(shù)據(jù)集的數(shù)據(jù),適合那些有著超大數(shù)據(jù)集(large data setlarge data set)的應(yīng)用程序。的應(yīng)用程序。HDFSHDFS放寬了(放寬了(relaxrelax)POS

6、IXPOSIX的要的要求,可以以流的形式訪問(求,可以以流的形式訪問(streaming accessstreaming access)文件系統(tǒng)中的數(shù)據(jù)文件系統(tǒng)中的數(shù)據(jù)HadoopHadoop框架核心設(shè)計框架核心設(shè)計HDFSHDFS和和MapReduce:MapReduce: HDFS HDFS為海量的數(shù)據(jù)提供分布式存儲為海量的數(shù)據(jù)提供分布式存儲 MapReduce MapReduce為海量的數(shù)據(jù)提供分布式計算為海量的數(shù)據(jù)提供分布式計算2021/3/96什么是分布式文件系統(tǒng):什么是分布式文件系統(tǒng):HDFS最簡單的理解如上圖,多臺服務(wù)器最簡單的理解如上圖,多臺服務(wù)器( (三臺也行三臺也行, ,兩

7、萬臺也可以兩萬臺也可以) )構(gòu)成的一個集群構(gòu)成的一個集群系統(tǒng)系統(tǒng)對外對外無論是讀操作還是寫操作都無論是讀操作還是寫操作都僅有主節(jié)點這一個出入口僅有主節(jié)點這一個出入口對內(nèi)若干個服務(wù)器之間會自動完成文件的多機復(fù)制,自動遷移,數(shù)據(jù)文件讀對內(nèi)若干個服務(wù)器之間會自動完成文件的多機復(fù)制,自動遷移,數(shù)據(jù)文件讀寫等操作寫等操作, ,前期,你們就理解這樣這個工作機制就行前期,你們就理解這樣這個工作機制就行HDFSHDFS是可擴展的分布式文件系統(tǒng),用于大型的、分布式的、對大量數(shù)據(jù)進行是可擴展的分布式文件系統(tǒng),用于大型的、分布式的、對大量數(shù)據(jù)進行訪問的應(yīng)用,它運行于廉價的普通硬件上,提供容錯功能訪問的應(yīng)用,它運行于

8、廉價的普通硬件上,提供容錯功能2021/3/97分布式計算分布式計算 mapreduce mapreduce簡單介紹:簡單介紹:形象化例子形象化例子1 1: 1 1、校長對一位老師說,批改一萬份卷子(必須上午改完)、校長對一位老師說,批改一萬份卷子(必須上午改完) 2 2、老師叫了、老師叫了100100個學(xué)生,老師和這個學(xué)生,老師和這100100個學(xué)生組成一個團隊(集個學(xué)生組成一個團隊(集群),老師指定將卷子分給這群),老師指定將卷子分給這100100個學(xué)生,讓他們完成,然后匯總,個學(xué)生,讓他們完成,然后匯總,老師不改只管分配老師不改只管分配例子例子2 2:2021/3/98Hadoop 生態(tài)

9、系統(tǒng)生態(tài)系統(tǒng)2021/3/99Hadoop Hadoop 生態(tài)系統(tǒng)概況:生態(tài)系統(tǒng)概況:Apache HiveApache Hive: 數(shù)據(jù)倉庫基礎(chǔ)設(shè)施,提供數(shù)據(jù)匯總和特定查詢。這個數(shù)據(jù)倉庫基礎(chǔ)設(shè)施,提供數(shù)據(jù)匯總和特定查詢。這個系統(tǒng)支持用戶進行有效的查詢,并實時得到返回結(jié)果。系統(tǒng)支持用戶進行有效的查詢,并實時得到返回結(jié)果。Apache SparkApache Spark: Apache Spark Apache Spark 是提供大數(shù)據(jù)集上快速進行數(shù)據(jù)分析是提供大數(shù)據(jù)集上快速進行數(shù)據(jù)分析的計算引擎。它建立在的計算引擎。它建立在 HDFS HDFS 之上,卻繞過了之上,卻繞過了 MapReduce

10、 MapReduce 使使用自己的數(shù)據(jù)處理框架,用自己的數(shù)據(jù)處理框架,Spark Spark 常用于實時查詢、流處理、迭常用于實時查詢、流處理、迭代算法、復(fù)雜操作運算和機器學(xué)習(xí)。代算法、復(fù)雜操作運算和機器學(xué)習(xí)。Apache AmbariApache Ambari: Ambari Ambari 用來協(xié)助管理用來協(xié)助管理 Hadoop Hadoop,它提供對,它提供對 Hadoop Hadoop 生態(tài)系統(tǒng)中許多工具的支持,包括生態(tài)系統(tǒng)中許多工具的支持,包括 Hive Hive、HBaseHBase、PigPig、 Spooq Spooq 和和 ZooKeeper ZooKeeper,這個工具提供集

11、群管理儀表盤,可以跟,這個工具提供集群管理儀表盤,可以跟蹤集群運行狀態(tài),幫助診斷性能問題。蹤集群運行狀態(tài),幫助診斷性能問題。2021/3/910Apache PigApache Pig: Pig Pig 是一個集成高級查詢語言的平臺,可以用來處理大數(shù)是一個集成高級查詢語言的平臺,可以用來處理大數(shù)據(jù)集據(jù)集Apache HBaseApache HBase: HBase HBase 是一個非關(guān)系型數(shù)據(jù)庫管理系統(tǒng),運行在是一個非關(guān)系型數(shù)據(jù)庫管理系統(tǒng),運行在 HDFS HDFS 之之上。它用來處理大數(shù)據(jù)工程中稀疏數(shù)據(jù)集上。它用來處理大數(shù)據(jù)工程中稀疏數(shù)據(jù)集其他常見的其他常見的 Hadoop Hadoop

12、項目還包括項目還包括 Avro Avro、CassandraCassandra、Chukwa, Chukwa, Mahout Mahout 和和 ZooKeeper ZooKeeperHadoop Hadoop 是一個能夠?qū)Υ罅繑?shù)據(jù)進行分布式處理的軟件框架。是一個能夠?qū)Υ罅繑?shù)據(jù)進行分布式處理的軟件框架。具有可靠、高效、可伸縮的特點,具有可靠、高效、可伸縮的特點,Hadoop Hadoop 的核心是的核心是 HDFS HDFS 和和 MapreduceMapreduce,hadoop2.0 hadoop2.0 還包括還包括 YARN YARNHadoop 生態(tài)系統(tǒng)概況:生態(tài)系統(tǒng)概況:2021/3

13、/911HadoopHadoop特點特點HadoopHadoop是一個能夠讓用戶輕松架構(gòu)和使用的是一個能夠讓用戶輕松架構(gòu)和使用的分布式計算分布式計算平臺,用戶可以輕松地在平臺,用戶可以輕松地在HadoopHadoop上開發(fā)和運行處理海量數(shù)據(jù)的上開發(fā)和運行處理海量數(shù)據(jù)的應(yīng)用程序應(yīng)用程序。它主要有以下幾個優(yōu)點:它主要有以下幾個優(yōu)點:高可靠性:高可靠性:HadoopHadoop按位存儲和處理數(shù)據(jù)的能力值得人們信賴。按位存儲和處理數(shù)據(jù)的能力值得人們信賴。高擴展性:高擴展性:HadoopHadoop是在可用的計算機集簇間分配數(shù)據(jù)并完成計算任務(wù)的,這些集是在可用的計算機集簇間分配數(shù)據(jù)并完成計算任務(wù)的,這些

14、集 簇可以方便地擴展到數(shù)以千計的節(jié)點中。簇可以方便地擴展到數(shù)以千計的節(jié)點中。 高效性:高效性:HadoopHadoop能夠在節(jié)點之間動態(tài)地移動數(shù)據(jù),并保證各個節(jié)點的能夠在節(jié)點之間動態(tài)地移動數(shù)據(jù),并保證各個節(jié)點的動態(tài)平衡動態(tài)平衡, 因此處理速度非常快。因此處理速度非???。高容錯性:高容錯性:HadoopHadoop能夠自動保存數(shù)據(jù)的多個副本,并且能夠自動將失敗的任務(wù)重能夠自動保存數(shù)據(jù)的多個副本,并且能夠自動將失敗的任務(wù)重 新分配。新分配。 低成本:與一體機、商用數(shù)據(jù)倉庫以及低成本:與一體機、商用數(shù)據(jù)倉庫以及QlikViewQlikView、Yonghong Z-SuiteYonghong Z-S

15、uite等數(shù)據(jù)集市等數(shù)據(jù)集市 相比,相比,hadoophadoop是開源的,項目的軟件成本因此會大大降低。是開源的,項目的軟件成本因此會大大降低。2021/3/912Hadoop工作機制工作機制hadoophadoop由兩部分組成,分別是分布式文件系統(tǒng)由兩部分組成,分別是分布式文件系統(tǒng)HDFSHDFS和分布式計算框和分布式計算框架架MapReduceMapReduceHDFSHDFS主要用于大規(guī)模數(shù)據(jù)的分布式存儲主要用于大規(guī)模數(shù)據(jù)的分布式存儲MapReduce MapReduce 則構(gòu)建在分布式文件系統(tǒng)之上,對存儲在分布式文件系則構(gòu)建在分布式文件系統(tǒng)之上,對存儲在分布式文件系統(tǒng)中的數(shù)據(jù)進行分布

16、式計算統(tǒng)中的數(shù)據(jù)進行分布式計算 HadoopHadoop默認(rèn)使用的分布式文件系統(tǒng)默認(rèn)使用的分布式文件系統(tǒng)HFDS(HadoopHFDS(Hadoop DistributedDistributed FileFile System),System),它與它與MapReduceMapReduce框架緊密結(jié)合框架緊密結(jié)合HadoopHadoop中,中,MapReduce MapReduce 底層的分布式文件系統(tǒng)是獨立模塊,用戶可底層的分布式文件系統(tǒng)是獨立模塊,用戶可按照約定的一套接口實現(xiàn)自己的分布式文件系統(tǒng),然后經(jīng)過簡單的按照約定的一套接口實現(xiàn)自己的分布式文件系統(tǒng),然后經(jīng)過簡單的配置后,存儲在該文件系

17、統(tǒng)上的數(shù)據(jù)便配置后,存儲在該文件系統(tǒng)上的數(shù)據(jù)便 可以被可以被 MapReduce MapReduce 處理處理2021/3/913HadoopHadoop工作機制工作機制HDFSHDFS工作機制簡單介紹工作機制簡單介紹: :1 1、由一個、由一個 master master 與多個與多個 server server 組成組成2 2、Master Master 用來保存目錄與索引信息,用來保存目錄與索引信息,hadoop2xhadoop2x設(shè)置的每個設(shè)置的每個 chunk chunk 大大 小為小為 128M 128M;Hadoop1xHadoop1x設(shè)置的每個設(shè)置的每個 chunk chunk

18、 大小為大小為 64M 64M3 3、Master Master 的所有信息都存儲在內(nèi)存中,啟動時的信息從的所有信息都存儲在內(nèi)存中,啟動時的信息從 chunk chunk serverserver中獲得中獲得 2021/3/914HadoopHadoop工作機制工作機制HDFSHDFS是一個具有高度容錯性的分布式文件系統(tǒng),適合部署在廉價的機是一個具有高度容錯性的分布式文件系統(tǒng),適合部署在廉價的機器上器上HDFSHDFS的架構(gòu)如下圖的架構(gòu)如下圖1 1所示,總體上采用了所示,總體上采用了master/slave master/slave 架構(gòu),主要架構(gòu),主要由以下幾個組件組成:由以下幾個組件組成:

19、Client ,NameNode ,Secondary ,DataNodeClient ,NameNode ,Secondary ,DataNode2021/3/915ClientClient: 切分文件切分文件, ,訪問訪問 HDFS HDFS, ,與與 NameNode NameNode 交互,獲取文件位置信息;與交互,獲取文件位置信息;與 DataNode DataNode 交互,讀取和寫入數(shù)據(jù)交互,讀取和寫入數(shù)據(jù) NameNodeNameNode: Master Master 節(jié)點,在節(jié)點,在 hadoop1.X hadoop1.X 中只有一個,在中只有一個,在hadoop2xhado

20、op2x中可以配合中可以配合 zookeeper zookeeper實現(xiàn)實現(xiàn)HA(HA(熱備熱備- -兩個兩個NameNode)NameNode),管理,管理 HDFS HDFS 的名稱空間和數(shù)的名稱空間和數(shù)據(jù)據(jù) 塊映射信息,配置副本策略,處理客戶端請求塊映射信息,配置副本策略,處理客戶端請求 DataNodeDataNode: Slave Slave 節(jié)點,存儲實際的數(shù)據(jù),匯報存儲信息給節(jié)點,存儲實際的數(shù)據(jù),匯報存儲信息給 NameNode NameNodeSecondary NameNode(Secondary NameNode(可以叫做冷備可以叫做冷備) ): 輔助輔助 NameNode

21、 NameNode,分擔(dān)其工作量;定期合并,分擔(dān)其工作量;定期合并 fsimage fsimage 和和 fsedits fsedits,推,推 送送給給 NameNode NameNode;緊急情況下,可輔助恢復(fù);緊急情況下,可輔助恢復(fù) NameNode NameNode,但,但 Secondary Secondary NameNode NameNode 并非并非 NameNode NameNode 的熱備的熱備2021/3/916Mapreduce(分布式計算框架)(分布式計算框架)源自于源自于 google google 的的 MapReduce MapReduce 論文,發(fā)表于論文,發(fā)

22、表于 2004 2004 年年 12 12 月,月,Hadoop MapReduce Hadoop MapReduce 是是 google MapReduce google MapReduce 克隆版,克隆版,MapReduce MapReduce 是是一種計算模型,用以進行大數(shù)據(jù)量的計算一種計算模型,用以進行大數(shù)據(jù)量的計算MapMap: 對數(shù)據(jù)集上的獨立元素進行指定的操作,生成對數(shù)據(jù)集上的獨立元素進行指定的操作,生成鍵鍵- -值對值對形式中形式中 間結(jié)果間結(jié)果 Reduce Reduce : 對中間結(jié)果中相同對中間結(jié)果中相同“鍵鍵”的所有的所有“值值”進行規(guī)約,以得到最終進行規(guī)約,以得到最終

23、 結(jié)果結(jié)果 MapReduce MapReduce 這樣的功能劃分,非常適合在大量計算機組成的分布式這樣的功能劃分,非常適合在大量計算機組成的分布式并行環(huán)境里進行數(shù)據(jù)處理并行環(huán)境里進行數(shù)據(jù)處理2021/3/917Mapreduce Mapreduce 處理流程,以處理流程,以 wordCount( wordCount(詞頻統(tǒng)計詞頻統(tǒng)計) ) 為例:為例:2021/3/918Mapreduce Mapreduce (mapmap和和reducereduce)處理流程:)處理流程:2021/3/919hadoop工作任務(wù)工作任務(wù)(job)過程過程Hadoop V1 :2021/3/920JobTr

24、acker: Master 節(jié)點,只有一個,管理所有作業(yè),作業(yè)節(jié)點,只有一個,管理所有作業(yè),作業(yè)/任務(wù)的任務(wù)的 監(jiān)控、錯誤處理等;將任務(wù)分解成一系列任務(wù),并分監(jiān)控、錯誤處理等;將任務(wù)分解成一系列任務(wù),并分 派給派給 TaskTrackerTaskTracker: Slave 節(jié)點節(jié)點,運行運行 Map Task 和和 Reduce Task,與與JobTracker 交互,匯報任務(wù)狀態(tài)交互,匯報任務(wù)狀態(tài) Map Task: 解析每條數(shù)據(jù)記錄,傳遞給用戶編寫的解析每條數(shù)據(jù)記錄,傳遞給用戶編寫的 map(),并執(zhí)行,并執(zhí)行, 將輸出結(jié)果寫入本地磁盤將輸出結(jié)果寫入本地磁盤(如果為如果為 map-on

25、ly 作業(yè),直接作業(yè),直接 寫入寫入 HDFS)。Reducer Task: 從從 Map Task 的執(zhí)行結(jié)果中,遠(yuǎn)程讀取輸入數(shù)據(jù),對數(shù)的執(zhí)行結(jié)果中,遠(yuǎn)程讀取輸入數(shù)據(jù),對數(shù) 據(jù)進行排序,將數(shù)據(jù)按照分組傳遞給用戶編寫的據(jù)進行排序,將數(shù)據(jù)按照分組傳遞給用戶編寫的 reduce 函數(shù)執(zhí)行。函數(shù)執(zhí)行。2021/3/9212021/3/922C Clientlient( (客戶端客戶端) ): 編寫編寫 mapreduce mapreduce 程序,配置作業(yè),提交作業(yè),這就是程程序,配置作業(yè),提交作業(yè),這就是程 序員完成的工作序員完成的工作JobTrackerJobTracker: 初始化作業(yè),分配作

26、業(yè),與初始化作業(yè),分配作業(yè),與 TaskTracker TaskTracker 通信,協(xié)調(diào)整通信,協(xié)調(diào)整 個作業(yè)的執(zhí)行個作業(yè)的執(zhí)行T TaskTrackeraskTracker: 保持與保持與 JobTracker JobTracker 的通信,在分配的數(shù)據(jù)片段上執(zhí)行的通信,在分配的數(shù)據(jù)片段上執(zhí)行 Map Map 或或 Reduce Reduce 任務(wù)任務(wù)TaskTracker TaskTracker 和和 JobTracker JobTracker 的不同有個很重要的方面,就是在的不同有個很重要的方面,就是在執(zhí)行任務(wù)時候執(zhí)行任務(wù)時候 TaskTracker TaskTracker 可以有可以

27、有 n n 多個,多個,JobTracker JobTracker 則只則只會有一個(會有一個(JobTracker JobTracker 只能有一個就和只能有一個就和 hdfs hdfs 里里 namenode namenode 一一樣存在單點故障,我會在后面的樣存在單點故障,我會在后面的 mapreduce mapreduce 的相關(guān)問題里講到的相關(guān)問題里講到這個問題的)這個問題的)HdfsHdfs: 保存作業(yè)的數(shù)據(jù)、配置信息等等,最后的結(jié)果也是保存在保存作業(yè)的數(shù)據(jù)、配置信息等等,最后的結(jié)果也是保存在 hdfs hdfs 上面上面mapreduce mapreduce 作業(yè)執(zhí)行涉及作業(yè)執(zhí)行

28、涉及4 4個獨立的實體:個獨立的實體:2021/3/923hadoop工作任務(wù)工作任務(wù)(job)過程過程Hadoop V2 :2021/3/924MapReduceMapReduce在在Hadoop2xHadoop2x中稱為中稱為MR2MR2或或YARNYARN,將,將JobTrackerJobTracker中的資源管中的資源管 理理及任務(wù)生命周期管理(包括定時觸發(fā)及監(jiān)控),拆分成兩個獨立及任務(wù)生命周期管理(包括定時觸發(fā)及監(jiān)控),拆分成兩個獨立的服務(wù)的服務(wù): :1 1、用于管理全部資源的、用于管理全部資源的ResourceManagerResourceManager-用于管理向應(yīng)用程序分配用于

29、管理向應(yīng)用程序分配計算資源計算資源2 2、管理每個應(yīng)用的、管理每個應(yīng)用的ApplicationMasterApplicationMaster-用于管理應(yīng)用程序、調(diào)度以用于管理應(yīng)用程序、調(diào)度以及協(xié)調(diào)及協(xié)調(diào)一個應(yīng)用程序可以是經(jīng)典的一個應(yīng)用程序可以是經(jīng)典的MapReduceMapReduce架構(gòu)中的一個單獨的任務(wù)架構(gòu)中的一個單獨的任務(wù)ResourceManagerResourceManager及每臺機上的及每臺機上的NodeManagerNodeManager服務(wù),用于管理那臺機的用服務(wù),用于管理那臺機的用戶進程,形成計算架構(gòu)戶進程,形成計算架構(gòu)每個應(yīng)用程序的每個應(yīng)用程序的ApplicationMa

30、sterApplicationMaster實際上是一個框架具體庫,并負(fù)責(zé)實際上是一個框架具體庫,并負(fù)責(zé)從從ResourceManagerResourceManager中協(xié)調(diào)資源及與中協(xié)調(diào)資源及與NodeManager(s)NodeManager(s)協(xié)作執(zhí)行并監(jiān)控任協(xié)作執(zhí)行并監(jiān)控任務(wù)。務(wù)。說明:說明:2021/3/925關(guān)鍵進程關(guān)鍵進程NameNode SecondaryNameNodeDataNodeJobTracker TaskTracker2021/3/926關(guān)鍵進程關(guān)鍵進程NameNodeNameNode: 它是它是Hadoop 中的主服務(wù)器,管理文件系統(tǒng)名稱空間和對中的主服務(wù)器,管理

31、文件系統(tǒng)名稱空間和對集群中存儲的文件的訪問集群中存儲的文件的訪問2021/3/927關(guān)鍵進程關(guān)鍵進程SecondaryNameNodeSecondaryNameNode: 它不是它不是 namenode 的冗余守護進程,而是提供周期檢查點的冗余守護進程,而是提供周期檢查點和清理任務(wù)。和清理任務(wù)。 出于對可擴展性和容錯性等考慮,我們一般將出于對可擴展性和容錯性等考慮,我們一般將Secondary NameNode運行在一臺非運行在一臺非NameNode的機器上的機器上2021/3/928關(guān)鍵進程關(guān)鍵進程DataNodeDataNode: 它負(fù)責(zé)管理連接到節(jié)點的存儲(一個集群中可以有多個節(jié)它負(fù)責(zé)管

32、理連接到節(jié)點的存儲(一個集群中可以有多個節(jié)點)。每個存儲數(shù)據(jù)的節(jié)點運行一個點)。每個存儲數(shù)據(jù)的節(jié)點運行一個 datanode 守護進程守護進程2021/3/929關(guān)鍵進程關(guān)鍵進程JobTrackerJobTrackerJobTracker負(fù)責(zé)調(diào)度負(fù)責(zé)調(diào)度 DataNodeDataNode上的工作上的工作, ,每個每個 DataNodeDataNode有一個有一個TaskTrackerTaskTracker,它們執(zhí)行實際工作它們執(zhí)行實際工作JobTrackerJobTracker和和 TaskTrackerTaskTracker采用主采用主- -從形式,從形式,JobTrackerJobTrac

33、ker跨跨DataNodeDataNode分發(fā)工作,而分發(fā)工作,而 TaskTrackerTaskTracker執(zhí)行任務(wù)執(zhí)行任務(wù)JobTrackerJobTracker還檢查請求的工作,如果一個還檢查請求的工作,如果一個 DataNodeDataNode由于由于某種原因失敗,某種原因失敗,JobTrackerJobTracker會重新調(diào)度以前的任務(wù)會重新調(diào)度以前的任務(wù)2021/3/930關(guān)鍵進程關(guān)鍵進程TaskTrackerTaskTracker: 是在網(wǎng)絡(luò)環(huán)境中開始和跟蹤任務(wù)的核心位置,與是在網(wǎng)絡(luò)環(huán)境中開始和跟蹤任務(wù)的核心位置,與Jobtracker連接請求執(zhí)行任務(wù)而后報告任務(wù)狀態(tài)連接請求執(zhí)

34、行任務(wù)而后報告任務(wù)狀態(tài)2021/3/931HDFS hdfs-site.xml HDFS hdfs-site.xml 參數(shù)配置參數(shù)配置hadoop配置文件配置文件.dir NameNode元數(shù)據(jù)存放位置默認(rèn)值:file:/$hadoop.tmp.dir/dfs/namedfs.blocksize對于新文件切分的大小,單位byte。默認(rèn)是128M,每一個節(jié)點都要指定,包括客戶端。默認(rèn)值:134217728dfs.datanode.data.dirDataNode在本地磁盤存放block的位置,可以是以逗號分隔的目錄列表,DataNode循環(huán)向磁盤中寫入數(shù)據(jù),每個

35、DataNode可單獨指定與其它DataNode不一樣默認(rèn)值:file:/$hadoop.tmp.dir/dfs/data2021/3/932HDFS hdfs-site.xml HDFS hdfs-site.xml 參數(shù)配置參數(shù)配置node.handler.countNameNode用來處理來自DataNode的RPC請求的線程數(shù)量建議設(shè)置為DataNode數(shù)量的10%,一般在10200個之間如設(shè)置太小,DataNode在傳輸數(shù)據(jù)的時候日志中會報告“connectonrefused信息在NameNode上設(shè)定默認(rèn)值:10dfs.datanode.handler.countDa

36、taNode用來連接NameNode的RPC請求的線程數(shù)量取決于系統(tǒng)的繁忙程度設(shè)置太小會導(dǎo)致性能下降甚至報錯在DataNode上設(shè)定默認(rèn)值:10dfs.datanode.max.transfer.threadsDataNode可以同時處理的數(shù)據(jù)傳輸連接數(shù)建議值:40962021/3/933HDFS hdfs-site.xml HDFS hdfs-site.xml 參數(shù)配置參數(shù)配置dfs.permissions如果是true則檢查權(quán)限,否則不檢查(每一個人都可以存取文件)于NameNode上設(shè)定默認(rèn)值:truedfs.datanode.du.reserved在每個卷上面HDFS不能使用的空間大小

37、在每個DataNode上面設(shè)定默認(rèn)值:0建議為10737418240,即10G。需要結(jié)合MapReduce場景設(shè)置。dfs.datanode.failed.volumes.toleratedDataNode可以容忍損塊的磁盤數(shù)量,超過這個數(shù)量DataNode將會離線,所有在這個節(jié)點上面的block將會被重新復(fù)制默認(rèn)是0,但是在有多塊磁盤的時候一般會增大這個值dfs.replication在文件被寫入的時候,每一塊將要被復(fù)制多少份默認(rèn)是3份。建議3份在客戶端上設(shè)定通常也需要在DataNode上設(shè)定2021/3/934HDFS hdfs-site.xml HDFS hdfs-site.xml 參數(shù)

38、配置參數(shù)配置ldfs.webhdfs.enabled - -Enable WebHDFS (REST API) in Namenodes and Datanodes.Enable WebHDFS (REST API) in Namenodes and Datanodes. - #1. - #1.配置配置namenodenamenode必須將必須將dfs.webhdfs.enableddfs.webhdfs.enabled設(shè)置為設(shè)置為truetrue,否則,否則不能使用不能使用webhdfswebhdfs的的LISTSTATUSLISTSTATUS、LISTFILESTATUSLISTFILESTATUS等需要列出文件、等需要列出文件、文件夾狀態(tài)的命令,因為這些信息都是由文件夾狀態(tài)的命令,因為這些信息都是由namenodenamenode來保存的來保存的 -2. -2.使用說明使用說明hdfshdfs使用使用5007050070端口,訪問端口,訪問datanodedatanode的的webhdfswebhdfs使用使用5007550075端口,訪問文件、文件夾信息使用端

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論