Hadoop從入門到精通系列之--0.Hadoop生態體系

目錄

一 大數據的組織部門結構

二 Hadoop的組成部分

2.1 HDFS

2.2 YARN

2.3 MapReduce

三 Hadoop生態體系

四 Hadoop的目錄結構

4.1 bin目錄

4.2 etc目錄

4.3 lib目錄

4.4 sbin目錄

4.5 share目錄


一 大數據的組織部門結構

要向着數據挖掘組的職位努力,平臺組偏向於運維方向,數據倉庫組和數據挖掘組是最好的就業方向,報表開發組就不好意思評價了,其實就是普通的javaEE工程師,學的大數據就沒有意義了。

二 Hadoop的組成部分

2.1 HDFS

爲了解決大數據的存儲的問題,它的成員有三個,分別是NameNode,DataNode,SecondaryNameNode(2nn),下面分別介紹這三個成員,因爲HDFS是解決大數據的存儲問題,所以在入門這方面的時候要牢記存儲二字。

  1. NameNode:存儲文件的元數據,比如文件名,文件目錄結構,文件屬性(生成時間,副本書,文件權限),以及每個文件的塊列表,和塊所在的DataNode。
  2. DataNode:在本地硬盤上存儲的具體文件,塊文件和塊文件的校驗和。它和NameNode的關係就像目錄和具體內容的關係一樣。
  3. SecondaryNode:作爲NameNode的輔助工具,相當於NameNode中元數據的備份

2.2 YARN

YARN相當於Hadoop的大管家,主要是分配資源,管理這個集羣上的任務,對這些任務進行管理,還是理解大管家這個詞比較貼切。它的成員主要有ResourceManager,NodeManager,ApplicationMaster,Container。

  1. ResourceManager:處理客戶端的請求如job.waitForCompletion(true);監控NodeManager,如所有的Node都要向ResourceManager報告自己的狀態;啓動和監控ApplicationMaster;資源的分配和調度。總的來說ResourceManager是大管家
  2. NodeManager:管理單個節點的資源;處理來自ResourceManager的命令;處理來自ApplicationMaster的命令;總的來說NodeManager是當前這個服務器的小管家
  3. ApplicationMaster:由ResourceManager創建;負責數據的切片;爲job申請資源並分配資源;
  4. Container:它是ResourceManager中提到的資源的抽象,它存儲的是當前服務器的配置比如說內存,硬盤,cpu等,當ApplicationMaster向ResourceManager申請資源的時候,它負責分配。

2.3 MapReduce

MapReduce是分爲兩個階段的,分別是Map階段和Reduce階段。

  1. Map階段:主要作用是並行處理輸入的數據,比方說有1TB的數據,用一臺電腦處理和1千個電腦處理就是不一樣的,Map階段就相當於使用一千個電腦處理數據
  2. Reduce階段:主要作用是彙總Map階段的結果,上面說了Map階段是並行的,所以有很多電腦處理,那麼每個電腦處理的結果誰來彙總呢?Reduce階段就是乾的這個活

三 Hadoop生態體系

很多人都不知道Hadoop生態是什麼?大數據僅僅依靠Hadoop框架是不夠的,這個體系是龐大的,不僅僅包含Hadoop,它還有其它的框架,這個生態構成了現在的大數據生態。

四 Hadoop的目錄結構

本不該在這個地方介紹Hadoop目錄結構的,但是也沒有關係,看一看它長什麼模樣,不是更直觀嗎?在Linux上安裝好Hadoop之後,可以查看一下它的目錄結構。如下:

4.1 bin目錄

存放着對Hadoop相關服務(HDFS,YARN)進行操作的腳本。

普及一下Linux的基本知識,上圖中行首那一串估計有很多人不懂,這裏普及一下:

-rwxr-xr-x. 1 wanglei wanglei  11386 5月  22 2017 yarn.cmd

  1.  -    :不要忽略這個橫槓,第一位表示文件類型,-   表示普通文件,d  表示文件夾,1  表示軟連接,  c  表示設備,鍵盤什麼的,b  表示塊文件,硬盤。
  2. rwx:三位結合來看,r表示可讀,w表示可寫,x表示可執行,這三位表示文件所有者對這個文件擁有讀寫執行權限
  3. r-x:同理,這三位表示文件所在組的其他用戶對這個文件有讀執行權限
  4. r-x:同理,這三位表示其他組的用戶對這個文件有讀執行權限
  5. 1:如果是文件,表示硬鏈接的個數,如果是文件夾,表示子文件夾的個數
  6. wanglei  wanglei:文件的所有者和所有者在的組
  7. 11386:文件大小,如果是文件夾的話,大小爲4096
  8. 後面的是文件時間和文件名稱

4.2 etc目錄

存放Hadoop的配置文件

4.3 lib目錄

存放Hadoop的本地庫,對數據進行壓縮和解壓縮的功能庫

4.4 sbin目錄

存放啓動和停止Hadoop服務的命令,與bin的區別在於bin中是具體操作的命令,而sbin目錄是啓動和停止服務的。

4.5 share目錄

存放Hadoop的依賴jar包,官方文檔,和官方的案例

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章