Hadoop 的 Namenode 單點問題一直廣受詬病,而這個問題最近將會得到解決,對Namenode 的HA方案已經完成實施併合併到主幹,經過嚴格的測試後將會在後續版本中發佈。
HA方案中,主要進行了如下的一些工作:
- Configuration changes for HA
- Notion of active and standby states were added to the Namenode
- Client-side redirection
- Standby processing journal from Active
- Dual block reports to Active and Standby
其主要原理是將NameNode分爲兩種角色,Active和Standby,Active就是正在進行服務的NameNode,而Standby又分三種情況
- Cold Standby:是當Active NN已經掛掉後纔起來的,它本身沒有保存任何數據,這時候並不會減少恢復時間
- Warm Standby:是在Active NN掛掉前起來的,其中保存了一部分數據,所以在恢復時只需要恢復沒有的數據,減少了恢復時間
- Hot Standby:它裏面保存的數據和Active是完成一樣的,可以直接熱切換到它上面繼續服務