新聞中心
本節(jié)和大家一起學習一下Hadoop, 一個分布式系統(tǒng)基礎架構,由Apache基金會開發(fā)的,在這里和大家分享一下它的開源實現以及Hadoop研究方面的內容,希望通過本節(jié)的學習大家對Hadoop這一概念有清楚的認識。

創(chuàng)新互聯(lián)公司從2013年開始,是專業(yè)互聯(lián)網技術服務公司,擁有項目成都網站設計、成都網站制作網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元文安做網站,已為上家服務,為文安各地企業(yè)和個人服務,聯(lián)系電話:13518219792
Hadoop概念
一個分布式系統(tǒng)基礎架構,由Apache基金會開發(fā)。用戶可以在不了解分布式底層細節(jié)的情況下,開發(fā)分布式程序。充分利用集群的威力高速運算和存儲。
簡單地說來,Hadoop是一個可以更容易開發(fā)和運行處理大規(guī)模數據的軟件平臺。
Hadoop實現了一個分布式文件系統(tǒng)(HadoopDistributedFileSystem),簡稱HDFS。HDFS有著高容錯性(fault-tolerent)的特點,并且設計用來部署在低廉的(low-cost)硬件上。而且它提供高傳輸率(highthroughput)來訪問應用程序的數據,適合那些有著超大數據集(largedataset)的應用程序。HDFS放寬了(relax)POSIX的要求(requirements)這樣可以流的形式訪問(streamingaccess)文件系統(tǒng)中的數據。
開源實現
Hadoop是項目的總稱,起源于作者兒子的一只吃飽了的大象的名字。主要是由HDFS、MapReduce和Hbase組成。
HDFS是GoogleFileSystem(GFS)的開源實現。
MapReduce是GoogleMapReduce的開源實現。
HBase是GoogleBigTable的開源實現。
這個分布式框架很有創(chuàng)造性,而且有極大的擴展性,使得Google在系統(tǒng)吞吐量上有很大的競爭力。因此Apache基金會用Java實現了一個開源版本,支持Fedora、Ubuntu等Linux平臺。目前Hadoop受到Yahoo的支持,有Yahoo員工長期工作在項目上,而且Yahoo內部也準備使用Hadoop代替原來的的分布式系統(tǒng)。
Hadoop實現了HDFS文件系統(tǒng)和MapRecue。用戶只要繼承MapReduceBase,提供分別實現Map和Reduce的兩個類,并注冊Job即可自動分布式運行。
目前Release版本是0.20.1。還不成熟,但是已經集群規(guī)模已經可以達到4000個節(jié)點,是由Yahoo!實驗室中構建的。下面是此集群的相關數據:
?4000節(jié)點
[email protected]節(jié)點
?4x1TBSATADiskper節(jié)點
?8GRAMper節(jié)點
?千兆帶寬per節(jié)點
?每機架有40個節(jié)點
?每個機架有4千兆以太網上行鏈路
?RedhatLinuxAS4(Nahantupdate5)
?SunJavaJDK1.6.0_05-b13
?所以整個集群有30000多個CPU,近16PB的磁盤空間!
HDFS把節(jié)點分成兩類:NameNode和DataNode。NameNode是唯一的,程序與之通信,然后從DataNode上存取文件。這些操作是透明的,與普通的文件系統(tǒng)API沒有區(qū)別。
MapReduce則是JobTracker節(jié)點為主,分配工作以及負責和用戶程序通信。
HDFS和MapReduce實現是完全分離的,并不是沒有HDFS就不能MapReduce運算。
Hadoop也跟其他云計算項目有共同點和目標:實現海量數據的計算。而進行海量計算需要一個穩(wěn)定的,安全的數據容器,才有了Hadoop分布式文件系統(tǒng)(HDFS,HadoopDistributedFileSystem)。
HDFS通信部分使用org.apache.hadoop.ipc,可以很快使用RPC.Server.start()構造一個節(jié)點,具體業(yè)務功能還需自己實現。針對HDFS的業(yè)務則為數據流的讀寫,NameNode/DataNode的通信等。
MapReduce主要在org.apache.hadoop.mapred,實現提供的接口類,并完成節(jié)點通信(可以不是hadoop通信接口),就能進行MapReduce運算。
目前這個項目還在進行中,還沒有到達1.0版本,和Google系統(tǒng)的差距也非常大,但是進步非??欤档藐P注。
另外,這是云計算(CloudComputing)的初級階段的實現,是通向未來的橋梁。
Hadoop的發(fā)音音標[h?du:p]
Hadoop研究
Hadoop是原Yahoo的DougCutting根據Google發(fā)布的學術論文研究而來。DougCutting給這個Project起了個名字,
就叫Hadoop。其實Hadoop也是DougCutting的孩子的玩具的名字,一個可愛的黃色小象。
現在,DougCutting在Cloudera公司。Cloudera的Hadoop是商用版。不同開Apache的開源版。
如果要研究Hadoop的話,在下載Apache的版本是一種不錯的選擇。
只研究Apache版本的,不足以對Hadoop的理念理解。再對Cloudera版本的研究,會更上一層樓。
現在美國的AsterData,也是Hadoop的一個商用版,AsterData的MPP理念,ApplicationsWithin理念等等,
也都是值得研究。
Google的成功已經說明了RDB的下一代就是Nosql(NotOnlySQl),比說說GFS,Hadoop等等。
Hadoop作為開源的版本來說,其魅力更是不可估量。
上文中說到Google的學術論文,其中包涵有
GoogleFileSystem(大規(guī)模分散文件系統(tǒng))
MapReduce(大規(guī)模分散FrameWork)
BigTable(大規(guī)模分散數據庫)
Chubby(分散鎖服務)
這四大InfrastructureSoftware的陳述。
說起Google的GFS和Hadoop,不僅讓我想起了,Unix和Linux。
由Unix而來的開源Linux,現在更是家喻戶曉了。很多大型公司都起用Linux作為服務器。
相信不久的將來,Hadoop會像Linux一樣,席卷全球,惠而全球。
文章題目:Hadoop開源已經實現
分享路徑:http://m.fisionsoft.com.cn/article/cdigids.html


咨詢
建站咨詢
