Namenode是整個HDFS文件系統的前端,只有一個,管理數據塊映射信息,配置副本策略,處理客戶端的讀寫請求。
Secondary namenode是namenode的熱備,當active namenode出現故障時,快速切換為新的active namenode。定期更新系統鏡像和操作日志。
Datanode有多個,存儲數據塊,執行數據塊讀寫。
HDFS client與文件系統進行交互。
文件被切分成數據塊,分布存儲,默認情況下每個塊有三個副本。
HDFS不適合保存小文件。一個k和一個t數據塊的元數據大小是相同的,元數據會存儲在namenode,但namenode內存是有限的。大小文件的訪問速度相同,存取大量小文件浪費很多尋道時間。