以往Hadoop似乎就是大數據的代名詞。不過最近隨著大數據應用的深入,大家已經越來越傾向于僅僅把它看成是大數據的一個存儲工具了。
不過這并不一定就是壞事。把Hadoop當作廉價有效的存儲正好是Hadoop下一階段演進的的完美起點。今年夏天就要亮相的Hadoop 2.0將會令數據倉庫中的信息以及非結構化數據池前所未有地容易訪問。
Hadoop大桶
自成為大數據工具以來,Hadoop就是一個非常棒的數據存儲系統,但是需要開發Java應用來訪問數據的MapReduce學習起來卻比較困難。
當然,還有別的辦法可以從Hadoop中獲取信息。Hbase數據是Hadoop的一部分,它可以讓用戶按照數據庫范式來處理數據。Hive數據倉庫則可以讓你用類SQL的HiveSQL查詢語言來創建查詢并轉化為MapReduce任務。不過Hadoop仍受限于單線程性。MapReduce任務、Hive查詢、Hbase操作,等等,這些都要輪流進行。
這就是許多大數據供應商傾向于僅將Hadoop當作數據容器的原因,為了提高效率,他們在此基礎上再開發自己的工具來獲取或分析其中的數據。盡管把Hadoop形容為一個大桶很形象,但是Hadoop用戶當中已經有人把它看作是數據大湖甚至數據海洋了。不過光是規模大還是不行的,那些限制影響到了Hadoop的賣點。
Hadoop的開發社區也意識到這個問題,隨著Hadoop即將迭代到新的版本,上述限制即將在很大程度上被解除。
YARN解決方案
在Hadoop 2.0發布經理Arun Murthy看來,其最重要的變化是MapReduce框架升級為Apache YARN,這將擴展Hadoop中可以應用的軟件種類和應用程度。Arun Murthy本人就是YARN項目主管,他指出,Hadoop 1.0和2.0的區別在于,前者所有的事情都是面向批處理的,而后者則允許多個應用同時在內部訪問數據。
相對于當前MapReduce系統能處理的事情,把這些功能分開使得Hadoop集群資源的管理更加強大。其主要管理方式類似于操作系統對任務的處理,也就是說不再有一次一項操作的限制了。
有了YARN,開發者就能夠直接在Hadoop內部來開發應用,而不是像許多第三方工具所做的那樣,在外面把數據篩選出來。
Murthy稱,現在已經有供應商對在YARN框架內開發應用表現出興趣。Murthy估計,Hadoop 2.0的強力beta版有可能會在今年6月或7月推出,正式版則可能在8月發布。
如果YARN的確能履行其承諾的話,開發者將可以在原生的Hadoop平臺里方便地接觸到許多的數據大湖大海,令搜尋有用信息的任務更加流暢和便捷。屆時,大數據會變得更加有用、更加大眾化。