好程式設計師大資料學習路線Hadoop學習乾貨分享

好程式設計師IT發表於2019-08-27

  好程式設計師大資料學習路線Hadoop學習乾貨分享,Apache Hadoop 為可靠的,可擴充套件的分散式計算開發開源軟體。

Apache Hadoop軟體庫是一個框架,它允許使用簡單的程式設計模型跨計算機群集分散式處理大型資料集(海量的資料)。

包括這些模組:


- Hadoop Common:支援其他Hadoop模組的常用工具。

- Hadoop分散式檔案系統(HDFS™):一種分散式檔案系統,可提供對應用程式資料的高吞吐量訪問。

- Hadoop YARN:作業排程和叢集資源管理的框架。

- Hadoop MapReduce:一種用於並行處理大型資料集的基於YARN的系統。


上述每個模組有自己獨立的功能,而模組之間又有相互的關聯。


廣義上來說,HADOOP通常是指一個更廣泛的概念——HADOOP生態圈

可靠,可擴充套件的分散式計算的開源軟體,由HDFS、MapReduce、YARN組成。


HDFS

Hadoop分散式檔案系統,一般由一到兩個Namenode程式和若干Datanode程式組成,在實現了HA機制的HDFS中,還有ZKFC程式(一般跟NameNode程式執行在同一臺計算機上)和多個JN程式。


節點

執行Namenode或Datanode程式的機器稱之為節點,對應的執行Namenode程式的機器稱之為Namenode節點,執行Datanode程式的機器稱之為Datanode節點,這裡的機器可以是物理機也可以是虛擬機器。


Mapreduce

分散式並行離線計算框架,是一個分散式運算程式的程式設計框架,是使用者開發“基於hadoop的資料分析應用”的核心框架,Mapreduce核心功能是將使用者編寫的業務邏輯程式碼和MR自帶預設元件整合成一個完整的分散式運算程式,併發的執行在一個hadoop叢集上;與HDFS解決問題的原理類似,HDFS是將大的檔案切分成若干小檔案,然後將它們分別儲存到叢集中各個主機中。同樣原理,mapreduce是將一個複雜的運算切分成若個子運算,然後將它們分別交給叢集中各個主機,由各個主機並行運算。


名詞解釋


- Job :使用者的每一個計算請求稱為一個作業。

- Task:每一個作業,都需要拆分開了,交由多個主機來完成,拆分出來的執行單位就是任務。Task又分為如下三種型別的任務:

 - Map:負責map階段的整個資料處理流程

 - Reduce:負責reduce階段的整個資料處理流程

 - MRAppMaster:負責整個程式的過程排程及狀態協調

YARN

Yet Another Resource Negotiator(好吧,另一種資源協調者),作業排程和叢集資源管理的框架,由ResourceManager和NodeManager組成,ResourceManager有兩個主要元件:Scheduler和ApplicationsManager。


Scheduler

排程程式負責根據熟悉的容量,佇列等約束將資源分配給各種正在執行的應用程式。排程程式是純排程程式,因為它不執行應用程式狀態的監視或跟蹤。此外,由於應用程式故障或硬體故障,它無法保證重啟失敗的任務。排程程式根據應用程式的資源需求執行其排程功能; 它是基於資源Container的抽象概念,它包含記憶體,cpu,磁碟,網路等元素。


ApplicationsManager

負責接受作業提交,協商第一個容器以執行特定於應用程式的ApplicationMaster,並提供在失敗時重新啟動ApplicationMaster容器的服務。每個應用程式ApplicationMaster負責從Scheduler協商適當的資源容器,跟蹤其狀態並監視進度。


Zookeeper

分散式應用程式的分散式協調服務,由多個QuorumPeerMain程式組成,本質上這些程式功能類似,但是在zookeeper執行過程中,會由其中的一個程式充當leader角色,剩餘程式充當follower角色。


znode

zookeeper內部維護的處於記憶體中的樹狀資料結構中的一個組成部分,即樹狀資料結構中的節點,具有許可權、型別、版本等相關元資訊,和子節點、父節點、自身內容等其他相關資訊。zookeeper負責監控節點的變化狀態,包括節點的新增、刪除、內容變更、子節點變更,但是zookeeper不負責某個節點發生變化之後的動作,變化之後zookeeper可以告知這個節點的Watcher,然後由這個watcher負責處理。


HA

所謂HA,即高可用(7*24小時不中斷服務)(secondarynamenode只是保證了“可靠性”)實現高可用最關鍵的是消除單點故障,hadoop-ha嚴格來說應該分成各個元件的HA機制——HDFS的HA、YARN的HA。


- HDFS的HA機制詳解:透過雙namenode消除單點故障,雙namenode協調工作的要點:

  - 後設資料管理方式需要改變

  - 需要一個狀態管理功能模


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913892/viewspace-2655135/,如需轉載,請註明出處,否則將追究法律責任。

相關文章