回到頂端
|||
熱門: 血腥大選 環球小姐 土耳其

一通前雅虎工程師凌晨三點接到的電話,如何改變了Hadoop的未來?

WIRED.tw/Jasper Hsu 2013.07.16 00:00

Hortonworks architect Arun C. Murthy was inspired to overhaul Hadoop by a 3 a.m. phone call. Photo: Hortonworks

開源數據運算平台Hadoop是臉書、Twitter、eBay、雅虎及其他許多企業的重要資料處理系統,近年來幾乎已成為巨量資料處理的代名詞,近日,Hadoop 2.0的出現將再度改變巨量資料( Big Data )的世界。但一直到2007年的那個凌晨,Hadoop根本沒什麼人注意。

一通對Hadoop影響深遠的深夜來電

2007年,一通凌晨三點的電話叫醒前雅虎工程師穆爾蒂( Arun C. Murthy),電話那端傳來雅虎網站的廣告定向應用程式(ad-targeting application)執行速度非常緩慢的消息。穆爾蒂很快發現原因出在一個以開源數據運算平台Hadoop寫成的程式出了問題,雖然不是他寫的,但他得負責善後。

「我沒事幹嘛得去幫別人的Hadoop抓錯呢?」當時穆爾蒂看到以Java語言寫成的Hadoop軟體幾乎打算拒絕,但最後還是決定加入,也因此他發現一個更大的問題:他手上得處理的程式根本不適合在Hadoop上執行。

要了解穆爾蒂遇到的麻煩,得先了解Hadoop平台的架構。實際上,Hadoop是個由兩部分組成的軟體平台,一部分叫做Hadoop分散式文件存儲系統(HDFS);另一部分則是MapReduce處理系統。

使用者可將大量的資料存在儲存系統裡,然後該系統會將這些資料分布在數十、數百、甚至數千台伺服器中,接著再利用MapReduce在伺服器叢集裡把大問題分解成小問題。這就是Hadoop的力量:用大量廉價的伺服器替代超級電腦,並且省去購買硬體的昂貴成本。

Hadoop難以解決的問題

但問題是,有時候開發者並不想因為從其中一個叢集裡取出資料就動用整個MapReduce,當時雅虎的廣告定向程式也碰到這個問題。因此穆爾蒂大膽提出,Hadoop需要另一個系統。

當時,他先用暫時的解決方案處理程式過慢的問題,之後便開始研擬治本之道。在2008到2010年期間,Hadoop團隊決定提升Hadoop的安全性和穩定性,以使其更適合企業使用。那時,許多系統例如Pig和Hive等接連被創造來解決困擾著穆爾蒂的問題,但總是治標不治本。

直到2010年中,Hadoop團隊認為改革時機已經成熟,穆爾蒂和整個Hadoop社群的開發者集結起來為這個平台進行大更新,最後Hadoop 2.0誕生了一個生力軍:YARN組件。

Hadoop 2.0與YARN

YARN是一個建構於HDFS上的系統,它讓開發者與HDFS互動,但不必透過MapReduce系統,穆爾蒂說:「2.0其實不是隨便取的,它代表Hadoop的第二體系」。

自從YARN誕生後,許多支援Hadoop的新軟體也相繼出現。例如,Twitter的即時資料處理系統 Storm;以及雅虎最近也使用Spark處理資料;而巨量資料處理公司Cloudera也開發出Impala提升了Hadoop的查詢速度。

但穆爾蒂表示,所有這些系統都可以與YARN互動,只要開發者願意,他們就可以使用YARN來查詢Hadoop,使得整個巨量資料的系統變得更為有效。

Hadoop 1.0 與 2.0 的架構比較。Image: Hortonworks

官方的Hadoop 2.0開源計畫正處於內部測試階段,預計很快就會推出測試版,雖然完全普及市場還要一段時間,但可以預見屆時將為市場帶來嶄新風貌,而這一切都要歸功於6年前那通凌晨三點的電話。

推薦閱讀:

雅虎挑戰Google龍頭地位的新秘密武器:柏克萊博士開發比Hadoop更強的新系統Spark

3秒處理1PB資料!Google Dremel打敗Hadoop引領「巨量資料處理」趨勢

Red Hat營收突破十億美元!想知道新創公司如何利用開源碼「掏金」?

社群留言