Hadoop究竟是什么,對于這個問題答案或許很多人并不了解,筆者不僅也要問:到底這個“火起來”的開源技術(shù)有何魅力?通過進一步的學習和了解,介紹一下什么是Hadoop,希望通過本文大家對Hadoop有清晰的認識。

提及Hadoop有著眾多版本的說明,其實是早年雅虎搜索工程師Doug Cutting開發(fā)出這個用以創(chuàng)建分布式計算機環(huán)境的開源軟件庫,并以自己兒子的大象玩偶為其命名,誰能想到如今占據(jù)“大數(shù)據(jù)”熱門首選技術(shù)。

借勢成長 開源技術(shù)Hadoop究竟是什么?

維基百科

查詢維基百科,簡單來說Hadoop是Apache軟件基金會所研發(fā)的開放源碼并行運算編程工具和分散式檔案系統(tǒng),支持數(shù)據(jù)密集型分布式應用程序,在Apache v2許可認證下,Hadoop框架透明地為應用程序提供可靠性與數(shù)據(jù)移動保障。Hadoop實現(xiàn)了一個被稱為map/Reduce的計算模型,在這個計算模型中應用程序被分為很多的小塊,每一塊都能在集群中的任意節(jié)點上執(zhí)行或重新執(zhí)行。另外,它還提供了一個分布式文件系統(tǒng)(HDFS)來在計算節(jié)點上存儲數(shù)據(jù),為集群提供了非常高的聚合帶寬。

可見,之前談到Hadoop,業(yè)界總與MapReduce放在一起,但其實HDFS和MapReduce一樣都是Hadoop的基礎。既然如此,Hadoop屬于開源技術(shù)是否免費提供應用?筆者了解軟件的安裝部署是需要付費,由于Hadoop在管理工具與支持服務方面的不足,企業(yè)在使用過程中很容易產(chǎn)生額外費用。另外,由于它沒有優(yōu)化程序,專業(yè)運行環(huán)境中人工輸入代碼費用不菲,更不用提部署Hadoop集群的硬件和相關(guān)配置的成本。

借勢成長 開源技術(shù)Hadoop究竟是什么?

“大數(shù)據(jù)”首選技術(shù)Hadoop(來源hadoop)

正如上面談到,Hadoop有數(shù)據(jù)應用上的優(yōu)勢,HDFS和MapReduce都是基礎,但并不容易部署與實施,其實如今針對Hadoop開源技術(shù)推廣,市場開發(fā)應用上主要有兩個圈子:一個是做算法、分析的圈子,另外一個是做架構(gòu)、設計的圈子,如何把這兩個圈子技術(shù)有效的結(jié)合產(chǎn)生應用是大數(shù)據(jù)的突破點。

了解到Hadoop的技術(shù)特點和應用部署問題,很多人最大的疑惑是Hadoop技術(shù)未來真正的價值是什么?從技術(shù)特點上來說,之前提到Hadoop由采用Hadoop分布式文件系統(tǒng)(HDFS)的可靠數(shù)據(jù)存儲服務,以及MapReduce技術(shù)的高性能并行數(shù)據(jù)處理服務是其優(yōu)勢所在。這里簡單說,Hadoop的技術(shù)對復雜數(shù)據(jù)的快速、可靠分析變?yōu)樯虡I(yè)價值的基礎。

借勢成長 開源技術(shù)Hadoop究竟是什么?

Hadoop子項目

而對于Hadoop來說,盡管提供了數(shù)據(jù)存儲和并行處理平臺,但其真正的價值來自于添加件和功能,以及Hadoop Common、Chukwa、HBase、Hive、Pig和ZooKeeper這項技術(shù)的增加功能性和新能力的子項目實現(xiàn)。

借勢成長 開源技術(shù)Hadoop究竟是什么?

從關(guān)系結(jié)構(gòu)看,Pig是一種編程語言,可加載數(shù)據(jù)、表達轉(zhuǎn)換數(shù)據(jù)以及存儲最終結(jié)果,它簡化了Hadoop常見的工作任務。而Hive在Hadoop中扮演數(shù)據(jù)倉庫的角色。Hive添加數(shù)據(jù)的結(jié)構(gòu)在HDFS,并允許使用類似于SQL語法進行數(shù)據(jù)查詢。

談到區(qū)別,Hive更適合于數(shù)據(jù)倉庫的任務。Pig在大數(shù)據(jù)集領域更多的靈活性,相比Hive直接使用Hadoop Java APIs可大幅削減代碼量。

借勢成長 開源技術(shù)Hadoop究竟是什么?

Hadoop子項目說明

最左側(cè)的Ambari項目是最新加入Hadoop,旨在幫助系統(tǒng)管理員部署和配置Hadoop,升級集群以及監(jiān)控服務。而ZooKeeper最大的功能是協(xié)調(diào),隨著越來越多的項目加入Hadoop生態(tài)系統(tǒng)的一部分,集群成員通過ZooKeeper功能進行彼此同步并了解訪問服務和配置。

由此,從概念、架構(gòu)到子項目,筆者感覺Hadoop盡管應用于分布式環(huán)境,其開放的生態(tài)系統(tǒng)如同Linux一樣,各個IT廠商通過集成和測試Apache Hadoop的組件,并添加廠商自身的工具和管理功能來不斷擴展Hadoop生態(tài)環(huán)境??梢?,廠商既成為開源Hadoop項目的代碼和功能貢獻者,又同時把不同模式帶到實際的業(yè)務應用中,結(jié)合自己的產(chǎn)品提供大數(shù)據(jù)解決方案。

分享到

zhaohang

相關(guān)推薦