1.什麼是名稱節點node
在HDFS中,名稱節點負責管理分佈式文件系統的命名空間(Namespace),保存了兩個核心的數據結構-FsImage和EditLog。安全
名稱節點記錄了每一個文件中各個塊所在的數據節點的位置信息,但並不持久化存儲這些信息,而是在系統每次啓動時掃描全部數據節點重構獲得這些信息。數據結構
2.名稱節點工做過程分佈式
名稱節點啓動時,會將FsImage的內容加載到內存當中,而後執行EditLog文件中的各項操做,使得內存中的元數據保存最新。這個操做完成後,就會建立一個新的FsImage文件和一個空的EditLog文件。名稱節點啓動成功並進入正常運行狀態之後,HDFS中的更新操做都會被寫入到EditLog,而不是直接寫入FsImage(文件大,直接寫入系統會變慢)。函數
名稱節點在啓動的過程當中處於「安全模式」,只能對外提供讀操做。啓動結束後,則進入正常運行狀態,對外提供讀寫操做。post
2、第二名稱節點(Secondary NameNode)
1.功能學習
在名稱節點運行期間,EditLog文件因爲操做不斷髮生會逐漸變大,爲解決逐漸變大帶來的問題,故採用了第二名稱節點。spa
2.工做過程設計
HDFS設計中,並不支持把系統直接切換到第二名稱節點,從這角度,第二名稱節點只是起到名稱節點「檢查點」的做用,並不能起到「熱備份」做用。即便有了第二名稱節點的存在,當名稱節點發生故障時,系統仍是有可能會丟失部分元數據信息。日誌
Reference:
dblab.xmu.edu.cn
學習交流,有任何問題還請隨時評論指出交流。