版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、分布式基礎(chǔ)設(shè)施GFS由于搜索引擎需要處理海量的數(shù)據(jù),所以Google的兩位創(chuàng)始人LarryPage和SergeyBrin在創(chuàng)業(yè)初期設(shè)計(jì)一套名為“BigFiles”的文件系統(tǒng),而GFS(全稱為“GoogleFileSystem”)這套分布式文件系統(tǒng)則是“BigFiles”的延續(xù)。首先,介紹它的架構(gòu),GFS主要分為兩類節(jié)點(diǎn):Master節(jié)點(diǎn):主要存儲(chǔ)與數(shù)據(jù)文件相關(guān)的元數(shù)據(jù),而不是Chunk(數(shù)據(jù)塊)。元數(shù)據(jù)包括一個(gè)能將64位標(biāo)簽映射到數(shù)據(jù)塊
2、的位置及其組成文件的表格,數(shù)據(jù)塊副本位置和哪個(gè)進(jìn)程正在讀寫(xiě)特定的數(shù)據(jù)塊等。還有Master節(jié)點(diǎn)會(huì)周期性地接收從每個(gè)Chunk節(jié)點(diǎn)來(lái)的更新(”Heartbeat”)來(lái)讓元數(shù)據(jù)保持最新?tīng)顟B(tài)。Chunk節(jié)點(diǎn):顧名思義,肯定用來(lái)存儲(chǔ)Chunk,數(shù)據(jù)文件通過(guò)被分割為每個(gè)默認(rèn)大小為64MB的Chunk的方式存儲(chǔ),而且每個(gè)Chunk有唯一一個(gè)64位標(biāo)簽,并且每個(gè)Chunk都會(huì)在整個(gè)分布式系統(tǒng)被復(fù)制多次,默認(rèn)為3次。下圖就是GFS的架構(gòu)圖:圖1.GFS
3、的架構(gòu)圖(參片[15])接著,在設(shè)計(jì)上,GFS主要有八個(gè)特點(diǎn):大文件和大數(shù)據(jù)塊:數(shù)據(jù)文件的大小普遍在GB級(jí)別,而且其每個(gè)數(shù)據(jù)塊默認(rèn)大小為64MB,這樣做的好處是減少了元數(shù)據(jù)的大小,能使Master節(jié)點(diǎn)能夠非常方便地將元數(shù)據(jù)放置在內(nèi)存中以提升訪問(wèn)效率。操作以添加為主:因?yàn)槲募苌俦粍h減或者覆蓋,通常只是進(jìn)行添加或者讀取操作,這樣能充分考慮到硬盤(pán)線性吞吐量大和隨機(jī)讀寫(xiě)慢的特點(diǎn)。支持容錯(cuò):首先,雖然當(dāng)時(shí)為了設(shè)計(jì)方便,采用了單Master的方案
4、,但是整個(gè)系統(tǒng)會(huì)保證每個(gè)Master都會(huì)有其相對(duì)應(yīng)的復(fù)制品,以便于在Master節(jié)點(diǎn)出現(xiàn)問(wèn)題時(shí)進(jìn)行切換。其次,在Chunk層,GFS已經(jīng)在設(shè)計(jì)上將節(jié)點(diǎn)失敗視為常態(tài),所以能非常好地處理Chunk節(jié)點(diǎn)失效的問(wèn)題。高吞吐量:雖然其單個(gè)節(jié)點(diǎn)的性能無(wú)論是從吞吐量還是延遲都很普通,但因?yàn)槠渲С稚锨У墓?jié)點(diǎn),所以總的數(shù)據(jù)吞吐量是非常驚人的。保護(hù)數(shù)據(jù):首先,文件被分割成固定尺寸的數(shù)據(jù)塊以便于保存,而且每個(gè)數(shù)據(jù)塊都會(huì)被系圖2.MapReduce的運(yùn)行機(jī)制(
5、參[19])接下來(lái),將根據(jù)上圖來(lái)舉一個(gè)MapReduce的例子:比如,通過(guò)搜索Spider將海量的Web頁(yè)面抓取到本地的GFS集群中,然后Index系統(tǒng)將會(huì)對(duì)這個(gè)GFS集群中多個(gè)數(shù)據(jù)Chunk進(jìn)行平行的Map處理,生成多個(gè)Key為URL,value為html頁(yè)面的鍵值對(duì)(KeyValueMap),接著系統(tǒng)會(huì)對(duì)這些剛生成的鍵值對(duì)進(jìn)行Shuffle(清理),之后系統(tǒng)會(huì)通過(guò)Reduce操作來(lái)根據(jù)相同的key值(也就是URL)合并這些鍵值對(duì)。最
6、后,通過(guò)MapReduce這么簡(jiǎn)單的編程模型,不僅能用于處理大規(guī)模數(shù)據(jù),而且能將很多繁瑣的細(xì)節(jié)隱藏起來(lái),比如自動(dòng)并行化,負(fù)載均衡和機(jī)器宕機(jī)處理等,這樣將極大地簡(jiǎn)化程序員的開(kāi)發(fā)工作。MapReduce可用于包括“分布grep,分布排序,web訪問(wèn)日志分析,反向索引構(gòu)建,文檔聚類,機(jī)器學(xué)習(xí),基于統(tǒng)計(jì)的機(jī)器翻譯,生成Google的整個(gè)搜索的索引“等大規(guī)模數(shù)據(jù)處理工作。Yahoo也推出MapReduce的開(kāi)源版本Hadoop,而且Hadoop在
7、業(yè)界也已經(jīng)被大規(guī)模使用。SawzallSawzall可以被認(rèn)為是構(gòu)建在MapReduce之上的采用類似Java語(yǔ)法的DSL(DomainSpecificLanguage),也可以認(rèn)為它是分布式的AWK。它主要用于對(duì)大規(guī)模分布式數(shù)據(jù)進(jìn)行篩選和聚合等高級(jí)數(shù)據(jù)處理操作,在實(shí)現(xiàn)方面,是通過(guò)解釋器將其轉(zhuǎn)化為相對(duì)應(yīng)的MapReduce任務(wù)。除了Google的Sawzall之外,yahoo推出了相似的Pig語(yǔ)言,但其語(yǔ)法類似于SQL。分布式數(shù)據(jù)庫(kù)技術(shù)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- google的核心技術(shù)
- google的十個(gè)核心技術(shù)
- google云計(jì)算三大核心技術(shù)
- 核心技術(shù)
- 節(jié)能核心技術(shù)
- 核心技術(shù)kt
- cpu核心技術(shù)揭密
- 超市經(jīng)營(yíng)的核心技術(shù)
- 核心技術(shù)是根本
- 物聯(lián)網(wǎng)核心技術(shù)
- 微波消解核心技術(shù)
- 人工智能的核心技術(shù)
- 電動(dòng)車的核心技術(shù)
- 管理者的核心技術(shù)
- 行動(dòng)學(xué)習(xí)選題核心技術(shù)
- 到底誰(shuí)在掌握核心技術(shù)
- 四大核心技術(shù)
- 金達(dá)威核心技術(shù)
- 服裝核心技術(shù)的文化屬性
- 節(jié)能核心技術(shù)有哪些
評(píng)論
0/150
提交評(píng)論