HDFS分散式檔案系統架構
阿新 • • 發佈:2019-01-09
HDFS: Hadoop Distributed File System
特點:hadoop分散式的檔案系統,具備高容錯、部署方便的特點,master/slave架構
元件:NameNode和DataNode
NameNode:名稱節點,記錄HDFS檔案所在的Block的大小、部署位置等資訊,類似檔案索引資訊的概念,充當master的角色,整個HDFS檔案系統只有一個NamNode節點,為了保證Hadoop的高容錯的特點,可以設定secondNameNode,對主NameNode進行資料備份,防止NameNode的單點故障造成HDFS檔案系統的崩潰
DataNode:HDFS檔案具體儲存資料的資訊,類似資料倉庫的概念,HDFS叢集可以由多個DataNode組成,實現儲存容量的動態擴容
工作流程:
客戶端訪問HDFS檔案系統時,首先通過TCP協議傳送資料給NameNode,NameNode根據內部維持的檔案資訊,將檔案儲存的相關資訊反饋給客戶端,客戶端根據NameNode的響應資訊,直接對該檔案所在的DataNode節點進行讀寫操作
高容錯的保障措施:
- secondNameNode對NameNode進行資料備份,避免單點故障
- DataNode與NameNode通過心跳訊號進行通訊,確保DataNode出現故障之後能夠進行相應的處理
- 可以為每個資料塊設定備份數,避免DataNode單節點故障造成資料丟失
- HDFS提供一種Block動態分配的機制,如果DataNode儲存的檔案過多,HDFS會平衡各種因素,將重負荷的DataNode的資料進行其他DataNode的資料儲存,避免單點DataNode負載過大,造成效能的降低