1、通過雙namenode消除單點故障
2、元資料管理方式需要改變:
(1)記憶體中各自儲存乙份元資料;
(2)edits日誌只有active狀態的namenode節點可以做寫操作;
(3)兩個namenode都可以讀取edits;
(4)共享的edits放在乙個共享儲存中管理(qjournal和nfs兩個主流實現);
3、需要乙個狀態管理功能模組
實現了乙個zkfailover,常駐在每乙個namenode所在的節點,每乙個zkfailover負責監控自己所在namenode節點,利用zk進行狀態標識,當需要進行狀態切換時,由zkfailover來負責切換,切換時需要防止腦裂(brain split)現象的發生。
4、必須保證兩個namenode之間能夠ssh免密登入。
5、隔離(fence),即同一時刻僅僅有乙個namenode對外提供服務
黑猴子的家 Hadoop Checkpoint機制
fsimage和edit log合併的過程如下圖所示 其實這個合併過程是乙個很耗i o與cpu的操作,並且在進行合併的過程中肯定也會有其他應用繼續訪問和修改hdfs檔案。所以,這個過程一般不是在單一的namenode節點上進行從。如果hdfs沒有做ha的話,checkpoint由secondname...
黑猴子的家 FileInputFormat切片機制
1 job提交流程原始碼詳解 waitforcompletion submit 1 建立連線 connect 1 建立提交job的 new cluster getconfiguration 2 判斷是本地yarn還是遠端 initialize jobtrackaddr,conf 2 提交job su...
黑猴子的家 Zookeeper Java API
1 code github 2 環境準備 1 建立乙個工程 2 解壓zookeeper 3.4.10.tar.gz檔案 3 拷貝zookeeper 3.4.10.jar jline 0.9.94.jar log4j 1.2.16.jar netty 3.10.5.final.jar slf4j ap...