Hadoop都2了 大數(shù)據(jù)應(yīng)用會邁上一個新臺階嗎
Apache軟件基金會終于推出了最新的Hadoop2數(shù)據(jù)分析平臺,從而引發(fā)了輿論對大數(shù)據(jù)演進(jìn)大飛躍的美好憧憬,此前我曾經(jīng)寫過“Hadoop就是大數(shù)據(jù)應(yīng)用又何妨”一文,對國內(nèi)大數(shù)據(jù)市場現(xiàn)狀進(jìn)行了分析。如今Hadoop 2發(fā)布,會如輿論所預(yù)計一樣刺激大數(shù)據(jù)應(yīng)用和發(fā)展嗎?
我認(rèn)為首先要看一下,Hadoop 2進(jìn)行了哪些改進(jìn)?從相關(guān)報道來看,Hadoop 2最大的改進(jìn)是發(fā)布了YARN數(shù)據(jù)處理和服務(wù)引擎,用于對Map/Reduce進(jìn)行了改進(jìn),同時為Hadoop File System (HDFS)添加高可用特性。
可以看一些技術(shù)細(xì)節(jié),對Hadoop數(shù)據(jù)進(jìn)行訪問,需要開發(fā)Java應(yīng)用實現(xiàn)Map/Reduce,學(xué)習(xí)起來會有一些困難,除此之外,也可以采用Hbase,用近似數(shù)據(jù)庫范式來處理數(shù)據(jù)。其Hive數(shù)據(jù)倉庫讓你可用類SQL的HiveSQL查詢語言來創(chuàng)建查詢,并轉(zhuǎn)化為MapReduce任務(wù)。不過Hadoop仍受限于單線程性。MapReduce任務(wù)、Hive查詢、Hbase操作等等都要輪流進(jìn)行,這就是局限。

Hadoop開發(fā)社區(qū)也意識到這個問題,在Hadoop2進(jìn)行了改進(jìn),將Map/Reduce升級為Apache YARN(Yet Another Resource Negotiator)。
YARN項目主管ArunMurthy指出:Hadoop1.0和2.0的區(qū)別在于,前者所有的事情都是面向批處理的,而后者則允許多個應(yīng)用同時在內(nèi)部訪問數(shù)據(jù)。
換句話說,相對于當(dāng)前Map/Reduce系統(tǒng)能處理的事情,把這些功能分開使得Hadoop集群資源的管理更加強大。其主要管理方式類似于操作系統(tǒng)對任務(wù)的處理,不再有一次一項操作的限制了。

有了YARN,開發(fā)者就能夠直接在Hadoop內(nèi)部來開發(fā)應(yīng)用,而不是像許多第三方工具所做的那樣,在外面把數(shù)據(jù)篩選出來。
從Hadoop 1.0到2.0對于用戶來說并沒有本質(zhì)不同,只是從技術(shù)的角度,簡化技術(shù)開發(fā)的難度,是一種量的積累,而不是質(zhì)的改變。對于最終用戶來說,Map/Reduce也好,YARN也好,不過是一種對資源的調(diào)度和使用方式。
因此,無論Hadoop 1.0、2.0其最大的貢獻(xiàn)還在于讓我們有機會使用X86等廉價手段來處理海量結(jié)構(gòu)化數(shù)據(jù),這也是大數(shù)據(jù)應(yīng)用被廣泛推廣和談及的主要原因。從目前來看,國內(nèi)大數(shù)據(jù)應(yīng)用所需要的還是大數(shù)據(jù)服務(wù)的提供商,至于這些服務(wù)商使用Map/Reduce,還是YARN都不重要,重要的不是工具,而是服務(wù)和結(jié)果。無論是Map/Reduce,還是YARN都不是普通非專業(yè)人員可以使用的,它還不想使用PC這么簡單,現(xiàn)在所需要的是會使用Map/Reduce,或者YARN的人,需要他們提供專業(yè)化的服務(wù)。
Hadoop 2會促進(jìn)大數(shù)據(jù)應(yīng)用和發(fā)展,但在國內(nèi)關(guān)鍵化問題仍然沒有解決,因此難以樂觀。