

隨著互聯網、移動互聯網、物聯網、云計算的快速發展,各行各業爆炸性增長的海量數據將再一次顛覆云時代,信息量暴增的大數據時代吹響了號角。
用戶如何從這龐大的數據庫中提取對自己有用的信息呢?這就需要大數據分析技術和工具,而傳統的商業智能(BI)工具已經抵擋不住企業如此龐大的數據信息。提到大數據,不得不說的是與大數據相關的技術名詞:Hadoop、MapReduce、HBase、NoSQL等。業界的眾多廠商也都開始從技術入手,打造各自的大數據解決方案。一時間,Hadoop紅遍了全球,就像當年的Linux開源軟件系統一樣,成為了研究和設計大數據解決方案的主流平臺。
華麗的變形
Hadoop的發展基本上經歷了這樣一個過程:從一個開源的Apache基金會項目,隨著越來越多的用戶的加入,不斷地被使用、貢獻和完善,逐漸形成了一個強大的生態系統。
隨著云計算和大數據的發展,如今Hadoop已經是一個能夠讓用戶輕松駕馭和使用的分布式計算平臺。用戶可以在不了解分布式底層細節的情況下,輕松地在Hadoop上開發和運行處理海量數據的應用程序,并能充分利用集群的威力實現高速運算和存儲。Hadoop實現了一個分布式文件系統(Hadoop Distributed File System),簡稱HDFS。HDFS有著高容錯性的特點,并且設計用來部署在價格低廉的硬件上,而且它提供高傳輸率來訪問應用程序的數據,適合那些有著超大數據集的應用程序。HDFS放寬了POSIX的要求,這樣可以用流的形式訪問文件系統中的數據。
Hadoop最受歡迎的是在Internet上對搜索關鍵字進行內容分類的工具,但它也可以解決許多要求極大伸縮性的問題。例如,如果您要grep一個100TB的巨型文件,會出現什么情況?在傳統的系統上,這將需要很長的時間。但是Hadoop在設計時就考慮到這些問題,采用并行執行機制,因此能大大提高效率。
如今,基于Hadoop的應用已經遍地開花:Yahoo通過集群運行Hadoop,以支持廣告系統和Web搜索的研究;Facebook借助集群運行Hadoop,以支持其數據分析和機器學習;百度則使用Hadoop進行搜索日志的分析和網頁數據的挖掘工作;淘寶的Hadoop系統用于存儲并處理電子商務交易的相關數據。
九年的長跑,Hadoop已從初出茅廬的小象華麗變形,成為了行業巨人,但還需戒驕戒躁、不斷完善。
性能大提升
Hadoop還是一個能夠對大量數據進行分布式處理的軟件框架。Hadoop是以一種可靠、高效、可伸縮的方式進行處理的。
Hadoop是可靠的,因為它假設計算元素和存儲會失敗,因此它維護多個工作數據副本,確保能夠針對失敗的節點重新分布處理。
Hadoop是高效的,因為它以并行的方式工作,通過并行處理加快處理速度。Hadoop可以將數千個節點投入計算,非常具有性能潛力。但并非所有的工作都可以進行并行處理,如用戶交互進行的數據分析。如果你設計的應用沒有專門為 Hadoop集群進行優化,那么性能并不理想,因為每個Map/Reduce任務都要等待之前的工作完成。
英特爾針對大數據的開放架構核心產品線,推出了英特爾Hadoop分發版,讓用戶可以實現“軟硬協同,體驗至上”的創新效果。例如,利用英特爾至強處理器平臺對網絡和I/O 技術所做的優化,與英特爾Hadoop分發版進行強力組合,以往分析1TB的數據需要4個多小時才能完全處理完,現在僅需要短短的7分鐘即可完成,極大地提升了大數據分析的速度。
Hadoop還是可伸縮的,能夠處理PB級數據。由于批量處理功能,Hadoop最好部署在這些場合:索引編制、模式識別、推薦引擎建立和情緒分析。在所有這些場合下,數據大量生成,存儲在Hadoop中,然后最終使用MapReduce函數來進行查詢。但是這并不意味著,Hadoop會取代數據中心里面目前的組件。恰恰相反,Hadoop會集成到現有的IT基礎設施里面,以便充分利用進入到該企業的海量數據。
曾聽過這樣一則案例:Hadoop集成到一家企業網站后,情況較之先前大有改觀:大大節省了時間和精力。來自Web服務器的日志數據不用經歷ETL操作,而是直接被完整地發送到了Hadoop里面的HDFS。然后,對日志數據執行同樣的清理過程,現在只使用MapReduce任務,一旦數據清理完畢,隨后被發送到數據倉庫。這個操作要迅速得多,這歸因于省去了ETL這一步,加上MapReduce操作速度快。而且,所有數據仍然保存在Hadoop里面,網站操作人員后續所需數據都可以查詢到。
開源的典范
Hadoop依賴于社區服務器,任何人都可以自由的下載、安裝并運行。由于它是一個開源項目,所以沒有軟件成本,這使得它成為一種非常吸引人的解決方案。Hadoop帶有用Java語言編寫的框架,因此運行在Linux生產平臺上是非常理想的。Hadoop上的應用程序也可以使用其他語言編寫,比如C++。
Hadoop稱得上開源創新領域的杰出典范。思科的James Urquhart曾經這樣說過:“Hadoop可以說是不涉及任何現有專利的開源項目在企業軟件方面所取得的首個里程碑式成功”。盡管里程碑不只這么一個,但能夠以這樣的規模將成功果實迅速擴展的例子還真不多見。
雖然大量的行業用戶開始學習Hadoop的技術架構,但在真實的生產環境中,依然顯得相當謹慎,很大一部分也是因為開源。Google雖然公開了MapReduce論文,但底層的GFS、BigTable等技術都不是開源的,因為這是互聯網的核心競爭力。很多企業的確想用這個技術,但是技術門檻比較高,前期投入非常之大。一旦進入維護和開發階段,Hadoop的真實成本就會凸顯出來。
群體的智慧
Hadoop作為海量數據分析的最佳解決方案,已經受到眾多IT廠商的關注,并由此而錘煉出風格迥異的Hadoop發行版以及支持Hadoop的產品。
例如,IBM在Hadoop系統領域的代表產品InfoSphere BigInsights,它是基于開源Apache Hadoop框架實現,增加了包括管理能力、工作流、安全管理等能力,并融入了IBM研究實驗室的數據分析、機器學習技術以及文本數據分析挖掘;IBM在流計算領域的代表產品是InfoSphere Streams,是目前業界獨有的流數據處理技術。Streams能夠在對諸如氣象信息、通訊信息、金融交易數據的管理中動態捕捉信息、進行實時分析,能夠對靜態數據的處理提供有效補充;在數據倉庫方面是InfoSphere Warehouse和etezza。Netezza克服了傳統數據倉庫在面臨大數據挑戰時的瓶頸,可以將大量數據整合到統一的平臺上,計算能力高達TB級。
結語
Hadoop目前已經取得了非常驕人的業績。隨著互聯網的發展,新的業務模式正在不斷涌現,Hadoop的應用也正逐漸從互聯網向電信、銀行、醫療、教育等領域拓展。在不久的將來,Hadoop必然會在更多的領域中繼續扮演“幕后英雄”,并帶來更多的驚喜。