Hadoop和Spark是目前大數(shù)據(jù)的兩大架構(gòu)系統(tǒng),很多人都喜歡將二者進(jìn)行比較。但是中培偉業(yè)《大數(shù)據(jù)平臺(tái)搭建與高性能計(jì)算最佳實(shí)踐》培訓(xùn)專家鐘老師表示,在當(dāng)前的情況下,簡(jiǎn)單地將Hadoop和Spark進(jìn)行比較甚至二選一是不明智的。
鐘老師認(rèn)為,直接比較Hadoop和Spark有難度,因?yàn)樗鼈兲幚淼脑S多任務(wù)都一樣,但是在一些方面又并不相互重疊。
比如說(shuō),Spark沒(méi)有文件管理功能,因而必須依賴Hadoop分布式文件系統(tǒng)(HDFS)或另外某種解決方案。將Hadoop MapReduce與Spark作一番比較來(lái)得更明智,因?yàn)樗鼈冏鳛閿?shù)據(jù)處理引擎更具有可比性。
過(guò)去幾年,隨著數(shù)據(jù)科學(xué)趨于成熟,也日益需要用一種不同的方法來(lái)處理大數(shù)據(jù)。Hadoop在一些業(yè)務(wù)應(yīng)用領(lǐng)域的表現(xiàn)比后起之秀Spark更勝一籌, 不過(guò)Spark在大數(shù)據(jù)領(lǐng)域有其一席之地,這歸功于它具有速度快、易于使用的優(yōu)點(diǎn)。本文剖析了兩大平臺(tái)的一系列常見(jiàn)屬性,包括性能、容錯(cuò)、成本、易用性、 數(shù)據(jù)處理、兼容性和安全性。
Hadoop和Spark方面要記住的最重要一點(diǎn)就是,它們并不是非此即彼的關(guān)系,因?yàn)樗鼈儾皇窍嗷ヅ懦猓膊皇钦f(shuō)一方是另一方的簡(jiǎn)易替代者。兩者彼此兼容,這使得這對(duì)組合成為一種功能極其強(qiáng)大的解決方案,適合諸多大數(shù)據(jù)應(yīng)用場(chǎng)合。
乍一看,對(duì)任何大數(shù)據(jù)應(yīng)用而言,使用Spark似乎是默認(rèn)選擇。然而,事實(shí)并非如此。MapReduce已在大數(shù)據(jù)市場(chǎng)取得了進(jìn)展,尤其受到這種公司企業(yè)的追捧:需要由商用系統(tǒng)對(duì)龐大數(shù)據(jù)集加以控制。Spark的速度、靈活性和相對(duì)易用性對(duì)MapReduce的低操作成本來(lái)說(shuō)是絕對(duì)補(bǔ)充。
實(shí)際上,Spark與MapReduce是一種相互共生的關(guān)系。Hadoop提供了Spark所沒(méi)有的功能特性,比如分布式文件系統(tǒng),而Spark 為需要它的那些數(shù)據(jù)集提供了實(shí)時(shí)內(nèi)存處理。完美的大數(shù)據(jù)場(chǎng)景正是設(shè)計(jì)人員當(dāng)初預(yù)想的那樣:讓Hadoop和Spark在同一個(gè)團(tuán)隊(duì)里面協(xié)同運(yùn)行。