項(xiàng)目主頁:http://hadoop. 一個(gè)分布式系統(tǒng)基礎(chǔ)架構(gòu),由Apache基金會(huì)開發(fā),。用戶可以在不了解分布式底層細(xì)節(jié)的情況下,,開發(fā)分布式程序。充分利用集群的威力高速運(yùn)算和存儲(chǔ),。 簡單地說來,,Hadoop是一個(gè)可以更容易開發(fā)和運(yùn)行處理大規(guī)模數(shù)據(jù)的軟件平臺(tái),。 Hadoop實(shí)現(xiàn)了一個(gè)分布式文件系統(tǒng)(HadoopDistributedFileSystem),簡稱HDFS,。HDFS有著高容錯(cuò)性(fault-tolerent)的特點(diǎn),,并且設(shè)計(jì)用來部署在低廉的(low-cost)硬件上。而且它提供高傳輸率(highthroughput)來訪問應(yīng)用程序的數(shù)據(jù),,適合那些有著超大數(shù)據(jù)集(largedataset)的應(yīng)用程序,。HDFS放寬了(relax)POSIX的要求(requirements)這樣可以流的形式訪問(streamingaccess)文件系統(tǒng)中的數(shù)據(jù)。 下面列舉hadoop主要的一些特點(diǎn): 1擴(kuò)容能力(Scalable):能可靠地(reliably)存儲(chǔ)和處理千兆字節(jié)(PB)數(shù)據(jù),。 2成本低(Economical):可以通過普通機(jī)器組成的服務(wù)器群來分發(fā)以及處理數(shù)據(jù),。這些服務(wù)器群總計(jì)可達(dá)數(shù)千個(gè)節(jié)點(diǎn)。 3高效率(Efficient):通過分發(fā)數(shù)據(jù),,hadoop可以在數(shù)據(jù)所在的節(jié)點(diǎn)上并行地(parallel)處理它們,,這使得處理非常的快速。 4可靠性(Reliable):hadoop能自動(dòng)地維護(hù)數(shù)據(jù)的多份復(fù)制,,并且在任務(wù)失敗后能自動(dòng)地重新部署(redeploy)計(jì)算任務(wù),。 起源:Google的集群系統(tǒng) Google的數(shù)據(jù)中心使用廉價(jià)的LinuxPC機(jī)組成集群,在上面運(yùn)行各種應(yīng)用,。即使是分布式開發(fā)的新手也可以迅速使用Google的基礎(chǔ)設(shè)施,。核心組件是3個(gè): 1、GFS(GoogleFileSystem),。一個(gè)分布式文件系統(tǒng),,隱藏下層負(fù)載均衡,冗余復(fù)制等細(xì)節(jié),,對(duì)上層程序提供一個(gè)統(tǒng)一的文件系統(tǒng)API接口,。Google根據(jù)自己的需求對(duì)它進(jìn)行了特別優(yōu)化,包括:超大文件的訪問,,讀操作比例遠(yuǎn)超過寫操作,,PC機(jī)極易發(fā)生故障造成節(jié)點(diǎn)失效等。GFS把文件分成64MB的塊,,分布在集群的機(jī)器上,,使用Linux的文件系統(tǒng)存放。同時(shí)每塊文件至少有3份以上的冗余,。中心是一個(gè)Master節(jié)點(diǎn),,根據(jù)文件索引,找尋文件塊,。詳見Google的工程師發(fā)布的GFS論文,。 2、MapReduce,。Google發(fā)現(xiàn)大多數(shù)分布式運(yùn)算可以抽象為MapReduce操作,。Map是把輸入Input分解成中間的Key/Value對(duì),,Reduce把Key/Value合成最終輸出Output。這兩個(gè)函數(shù)由程序員提供給系統(tǒng),,下層設(shè)施把Map和Reduce操作分布在集群上運(yùn)行,,并把結(jié)果存儲(chǔ)在GFS上。 3,、BigTable,。一個(gè)大型的分布式數(shù)據(jù)庫,這個(gè)數(shù)據(jù)庫不是關(guān)系式的數(shù)據(jù)庫,。像它的名字一樣,,就是一個(gè)巨大的表格,用來存儲(chǔ)結(jié)構(gòu)化的數(shù)據(jù),。 |
|