在實際的生產環境運維一個Hadoop集羣有一些必須要關注的事情。
1、Namenode的高可靠性
2、節點配置與管理
3、Mapreduce的內存配置
4、啓用trash
首要的是保證數據安全可靠,其次再去考慮存儲效率、計算效率、運維效率的優化與提高,當你覺得Hadoop集羣的性能太差太差的時候,其實是你對Hadoop的瞭解太少,Hadoop的效率沒有被髮揮出來。
數據的可靠性,可以通過高可用、高可靠的NameNode,以及具體數據多副本來實現。啓用Trash可以讓你在誤刪除數據之後快要絕望的時候給你反悔的機會,這個一定要啓動的,就算你設置的時間短一點都沒有關係,後悔藥就靠它了。
節點的配置就太多了,最爲重要當屬不同配置的機器要有自己個性化的配置了,尤其是內存的配置最爲重要。
參考文獻:
http://www.cloudera.com/blog/2009/12/7-tips-for-improving-mapreduce-performance/
MapReduce: 提高MapReduce性能的七點建議[譯]
http://wiki.apache.org/hadoop/