在實(shí)時(shí)數(shù)據(jù)世界里,為什么我們還這么執(zhí)著于Hadoop? 根據(jù)451 Research調(diào)查數(shù)據(jù)顯示,圍繞批處理架構(gòu)的Hadoop仍然是大數(shù)據(jù)的代表技術(shù),盡管其聲譽(yù)仍然超過(guò)實(shí)際部署情況。下面我們來(lái)具體了解一下。
批處理不是重點(diǎn)
Cloudera的Doug Cutting是一個(gè)非常聰明的人,也是開(kāi)源開(kāi)發(fā)人員,Hadoop、Lucene等大數(shù)據(jù)工具的開(kāi)發(fā)都有他的功勞。
雖然Cutting承認(rèn)實(shí)時(shí)流媒體技術(shù)的重要性,但他并沒(méi)有否認(rèn)面向批處理的Hadoop的價(jià)值,他表示:
并不是因?yàn)槲覀冇X(jué)得批處理是最好的,所以Hadoop圍繞批處理而構(gòu)建。批處理(特別是MapReduce)很自然是第一步,因?yàn)樗鄬?duì)容易部署,并提供很重要的價(jià)值。在Hadoop之前,沒(méi)有辦法使用開(kāi)源軟件在商品硬件存儲(chǔ)和處理千兆字節(jié)。Hadoop的MapReduce是很大的進(jìn)步。
我們很難說(shuō)清楚大數(shù)據(jù)的商品化對(duì)這個(gè)世界的重要性。這并不是說(shuō)在Hadoop之前我們沒(méi)有存儲(chǔ)和分析大量數(shù)據(jù),而是Hadoop讓我們非常廉價(jià)地實(shí)現(xiàn)這個(gè)過(guò)程。
總之,Hadoop民主化了大數(shù)據(jù)。
轉(zhuǎn)向流數(shù)據(jù)?
然而,Hadoop并沒(méi)有讓大數(shù)據(jù)分析變得容易。正如DataStax首席布道者Patrick McFadin表示,從企業(yè)數(shù)據(jù)挖掘價(jià)值并沒(méi)有那么簡(jiǎn)單:
我們都聽(tīng)說(shuō)過(guò)存儲(chǔ)和分析PB級(jí)數(shù)據(jù)的投資回報(bào)率的問(wèn)題。谷歌、雅虎和Facebook都在從中創(chuàng)造驚人的價(jià)值,而大部分企業(yè)都在試圖研究如何分析所有數(shù)據(jù),第一:收集所有數(shù)據(jù);第二:……;第三:利潤(rùn)!
在數(shù)據(jù)收集和利潤(rùn)之間有很多麻煩的步驟。隨著企業(yè)試圖加快對(duì)實(shí)時(shí)數(shù)據(jù)的分析能力,新技術(shù)為他們提供了可能。
McFadin發(fā)現(xiàn)了這個(gè)新大數(shù)據(jù)堆棧的關(guān)鍵要素。首先是一個(gè)排隊(duì)系統(tǒng),Kafka、RabbitMQ和Kinesis等。然后是流處理層,這可能包括Storm、Spark Streaming或者Samza。對(duì)于高速存儲(chǔ),企業(yè)經(jīng)常轉(zhuǎn)向Cassandra、HBase、MongoDB或者M(jìn)ySQL等關(guān)系型數(shù)據(jù)庫(kù)。
最有趣的是批處理仍然有用武之地。McFadin表示,批處理現(xiàn)在可用于處理,即匯總和更深入的分析。批處理和實(shí)時(shí)的融合被稱為“Lambda架構(gòu)”,這涉及讓三個(gè)元素和諧地共處:批處理、速度和服務(wù)。
換句話說(shuō),批處理仍然有用。
淘汰批處理
但并不是每個(gè)人都同意。Zoomdata公司首席執(zhí)行官和聯(lián)合創(chuàng)始人Justin Langseth認(rèn)為L(zhǎng)ambda是“不必要的”,并稱,“現(xiàn)在有端到端工具可以從采購(gòu)、運(yùn)輸、存儲(chǔ)到分析和可視化來(lái)處理數(shù)據(jù),而不需要批處理”。
在他看來(lái),批處理是大數(shù)據(jù)過(guò)去的遺留物:
實(shí)時(shí)數(shù)據(jù)顯然最好應(yīng)該作為流來(lái)處理,而且還可以加載歷史數(shù)據(jù),正如你的DVR可以加載電影《飄》或者上周的電視節(jié)目《美國(guó)偶像》到你的電視。這種區(qū)別很重要,Zoomdata認(rèn)為將數(shù)據(jù)作為流來(lái)分析可以增加可擴(kuò)展性和靈活性,而無(wú)論數(shù)據(jù)是實(shí)時(shí)還是歷史數(shù)據(jù)。
然而,超越可擴(kuò)展性和靈活性好處的可能是將批處理從大數(shù)據(jù)過(guò)程移除所帶來(lái)的簡(jiǎn)單性。Langseth認(rèn)為,“當(dāng)你不需要擔(dān)心批處理窗口以及從批處理故障中恢復(fù)時(shí),這可以極大地簡(jiǎn)化大數(shù)據(jù)架構(gòu)。”
流分析取代Hadoop?
Cutting稱,還沒(méi)有那么快。
Cutting認(rèn)為未來(lái)Hadoop等技術(shù)并不會(huì)完全被淘汰,流分析會(huì)得以發(fā)展,Cloudera的Enterprise Data Hub也是一樣。事實(shí)上,他不認(rèn)為會(huì)廣泛轉(zhuǎn)向流分析,而是為大家?guī)?lái)了又一種選擇。
更有趣的是,大數(shù)據(jù)的大爆炸會(huì)讓行業(yè)催生出一些好方法來(lái)應(yīng)對(duì)數(shù)據(jù)處理。
我認(rèn)為我們不會(huì)再那么頻繁地看到Spark這樣的主要技術(shù)增加,隨著時(shí)間的推移,我們將會(huì)標(biāo)準(zhǔn)化這些工具,為大多數(shù)人提供功能來(lái)滿足其大數(shù)據(jù)應(yīng)用需求。Hadoop帶來(lái)了技術(shù)爆炸,但我們可能會(huì)進(jìn)入比較正常的演化過(guò)程,在各行業(yè)廣泛使用這些技術(shù)。
DataStax社區(qū)經(jīng)理Scott Hirleman同意說(shuō):“批處理并不會(huì)消失,總是會(huì)需要對(duì)大量數(shù)據(jù)的大規(guī)模分析。”現(xiàn)在大家對(duì)流分析有極大的興趣,但稱現(xiàn)在還不清楚這種趨勢(shì)對(duì)大數(shù)據(jù)計(jì)劃的影響。
總之,流分析完全是關(guān)于“和”,而不是“或者”,這是對(duì)圍繞批處理系統(tǒng)(例如Hadoop)的很好的補(bǔ)充,但這肯定不會(huì)完全取代Hadoop。