HDFS1.x、2.x架構圖

monkeysayhi發表於2019-02-28

後面開始整理之前學習HDFS、Yarn時的筆記。

HDFS 1.x

image.png

主要角色:

  • Namenode * 1
    • 儲存、管理後設資料,包括檔案資訊、檔案與資料塊的對映。
    • 處理與後設資料相關的操作,如列舉路徑、檢視檔案的邏輯大小等。
    • 叢集的協調者,如Datanode上下線、資料塊的生命週期管理。
  • Datanode * n
    • 儲存、管理資料塊。
    • 處理檔案內容的讀、寫請求。
  • Client * n
    • 叢集的使用者,通過具體的FileSystem訪問叢集(門面模式)。

HDFS 2.x

與HDFS 1.x相比,2.x新增了兩個重要feature:HA、Federation。

image.png

角色變化如下:

  • Namenode * 2k
    • HA支援一個Active Namenode和一個Standby Namenode,以一個Namespace(或Nameservice)的形式對外服務。在active掛時,自動將將standby切換為新的active,舊的active恢復後成為standby。
    • Federation將多個Namespace合併為一個檢視,使用者可通過viewfs訪問。
  • Datanode * n
    • 所有節點共同對所有Namespace服務。在Datanode上,各Namespace擁有單獨的目錄(blockpool)。
  • Client * n
    • 2.x的Federation通過客戶端掛載表實現,要通過ViewFileSystem訪問NameNode。(這一點也算不上變化,多了一種門面而已)

HA大大加強了HDFS的可用性;Federation則將多個叢集的檢視合併在一起,方便使用者使用。兩個特性非常重要,HDFS 3.x在這兩個feature上繼續工作,如今HA以支援多standby,Federation支援伺服器端路由。後面再整理實現方案。


本文連結:HDFS1.x、2.x架構圖
作者:猴子007
出處:monkeysayhi.github.io
本文基於 知識共享署名-相同方式共享 4.0 國際許可協議釋出,歡迎轉載,演繹或用於商業目的,但是必須保留本文的署名及連結。

相關文章