linux視頻-教程專用mogilefs_第1頁(yè)
linux視頻-教程專用mogilefs_第2頁(yè)
linux視頻-教程專用mogilefs_第3頁(yè)
linux視頻-教程專用mogilefs_第4頁(yè)
linux視頻-教程專用mogilefs_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余81頁(yè)可下載查看

付費(fèi)下載

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

分布式系統(tǒng)基礎(chǔ)主講:

(

),

1661815153htt

COW:Copy

On

Write規(guī)則服務(wù)器cache商品 交易 用戶DB4readcacheDB4read商品

交易

用戶

用戶CNAME:

sh.cacheDB4read商品

交易

用戶

用戶CNAME:

sh.分布式NoSQL搜索引擎RDB交易前臺(tái)發(fā)布社區(qū)商品交易用戶用戶中心商品商品中心交易中心APRMTMXA接口R1R2TMprepareOKprepareOKTMR1commitR2OKOKcommitDistributed

FS主講:

(

),

1661815153htt

?數(shù)據(jù)數(shù)據(jù)搜索數(shù)據(jù)共享數(shù)據(jù)傳輸數(shù)據(jù)分析數(shù)據(jù)可視化問(wèn)題縱向擴(kuò)展受陣列空間限制橫向擴(kuò)展受交換設(shè)備限制節(jié)點(diǎn)受文件系統(tǒng)限制?節(jié)點(diǎn)間通信數(shù)據(jù)數(shù)據(jù)空間平衡容錯(cuò)文件系統(tǒng)支持DataNodeNameNode101-300W300W1-600WNamenodedatanode透明位置透明并發(fā)透明失效透明硬件透明可擴(kuò)展性透明遷移透明APRMXATMR1R2TMprepareprepareR1R2TMcommitcommitR1R2R1R2TMRollbackRollbackTMprepareOKprepareErrorCAP理論主講:

(

),

1661815153htt

C:

Consistency任何一個(gè)讀操作總是能夠之前完成的寫(xiě)操作A:

Availability可用性(指的是快速獲取數(shù)據(jù))每一次操作總是能夠在確定的時(shí)間返回P:

Tolerance

ofnetwork

Partition分區(qū)容錯(cuò)性(分布式)在出現(xiàn)網(wǎng)絡(luò)分區(qū)的情況下,仍然能夠滿足一致性和可用性APC10年前,Eric

Brewer教授

了著名的CAP理論,后來(lái)Seth

Gilbert和Nancy

lynch兩人證明了CAP理論的正確性CAP理論:一個(gè)分布式系統(tǒng)不可能滿足一致性,可用性和分區(qū)容錯(cuò)性這三個(gè)需求,最多只能同時(shí)滿足兩個(gè)熊掌與魚(yú)不可兼得關(guān)注一致性,就需要處理因?yàn)橄到y(tǒng)不可用而導(dǎo)致的寫(xiě)操作失敗的情況關(guān)注可用性,應(yīng)該知道系統(tǒng)的read操作可能不能精確的

到write操作寫(xiě)入的

CA:傳統(tǒng)關(guān)系數(shù)據(jù)庫(kù)

AP:key-value數(shù)據(jù)庫(kù)對(duì)大型

,可用性與分區(qū)

性優(yōu)先級(jí)要高于數(shù)據(jù)一致性,因此一般會(huì)盡量朝著A、P的方向設(shè)計(jì),然后通過(guò)其它

保證對(duì)于一致性的商務(wù)需求不同數(shù)據(jù)對(duì)于一致性的要求是不同的,例如用戶評(píng)論可以

相對(duì)較長(zhǎng)時(shí)間的不一致,其較少會(huì)影響交易和用戶體驗(yàn)超過(guò)10秒的價(jià)格不一而產(chǎn)品價(jià)格數(shù)據(jù)則是非常敏感的,通常致CAP理論的證明:Brewer‘s

CAP

Theorem強(qiáng)一致性ACID在單機(jī)環(huán)境中,強(qiáng)一致性可以由數(shù)據(jù)庫(kù)的事務(wù)來(lái)保證在多機(jī)環(huán)境中,強(qiáng)一致性很難做到分布式事務(wù):性能太差,在互聯(lián)網(wǎng)的應(yīng)用中不適合弱一致性(包括最終一致性)通過(guò)提交處理的半同步、半異步或全異步,取得最終一致性效果最終一致性使得數(shù)據(jù)的提交具有延時(shí)性,而在一定范圍的延時(shí)性范圍內(nèi)(比如一秒),應(yīng)用的可用性是正常的

/2008/12/eventual

ly_consistent.html內(nèi)存屏障通過(guò)以下的場(chǎng)景來(lái)進(jìn)為了更好的描述客戶端一致性,

行,這個(gè)場(chǎng)景包括三個(gè)組成部分:系統(tǒng)系統(tǒng)可以理解為一個(gè)黑盒子,它為提供了可用性和持久性的保系統(tǒng)write和read操作證ProcessA

ProcessA主要實(shí)現(xiàn)向ProcessB和ProcessC

ProcessB和C是獨(dú)立于A,并且B和C也相互獨(dú)立,它們同時(shí)也實(shí)現(xiàn)對(duì)存儲(chǔ)系統(tǒng)的write和read操作強(qiáng)一致性強(qiáng)一致性(即時(shí)一致性)假如A先寫(xiě)入一個(gè)值到系統(tǒng),

系統(tǒng)保證后續(xù)的A,B,C的讀操作都返回

值弱一致性假如A先寫(xiě)入了一個(gè)值到

系統(tǒng),

系統(tǒng)不能保證后續(xù)A,B,C的

操作能夠讀到

值這種情況下有一個(gè)“不一致性窗口”的概念,它特指從A寫(xiě)入值,到后續(xù)操作A,B,C

到值這一段時(shí)間。最終一致性最終一致性是弱一致性的一種特例假如A首先write了一個(gè)值到

系統(tǒng),

系統(tǒng)保證如果在A,B,C后續(xù)

之前沒(méi)有其他寫(xiě)操作更新同樣的值的話,最終所有的

操作都會(huì)

到A寫(xiě)入的

的值這種情況下,如果沒(méi)有失敗發(fā)生的話,“不一致性窗口”的大小依賴以下的幾個(gè)因素:交互延遲系統(tǒng)的負(fù)載架構(gòu)中replica的個(gè)數(shù)(可以理解為master/slave模式中,slave的個(gè)數(shù))在最終一致性方面最出名的應(yīng)該是DNS系統(tǒng)但更新一個(gè)

的IP以后,根據(jù)配置策略以及緩存控制策略的不同,最終所有的客戶都可以看到

和IP的Causal

consistency(因果一致性)如果ProcessA通知ProcessB它已經(jīng)更新了數(shù)據(jù),那么ProcessB的后續(xù)操作則A寫(xiě)入的值,而與A沒(méi)有因果關(guān)系的C則可以最終一致性Read-your-writes

consistency(過(guò)程一致性)如果Process

A寫(xiě)入了

的值,那么Process

A的后續(xù)操作都會(huì)到

值。但是其它用戶可能要過(guò)一會(huì)才可以看到Session

consistency(會(huì)話一致性)此種一致性要求客戶端和

系統(tǒng)交互的整個(gè)會(huì)話階段保證Read-your-writes

consistencyHibernate的session提供的一致性保證就屬于此種一致性Monotonic

read

consistency(簡(jiǎn)單讀一致性)此種一致性要求如果Process

A已經(jīng)

了對(duì)象的某個(gè)值,那么后續(xù)操作將不會(huì)

到更早的值Monotonic

write

consistency(簡(jiǎn)單寫(xiě)一致性)此種一致性保證系統(tǒng)會(huì)序列化執(zhí)行一個(gè)Process中的所有寫(xiě)操作概念N:節(jié)點(diǎn)的個(gè)數(shù)W:更新的時(shí)候需要確認(rèn)已經(jīng)被更新的節(jié)點(diǎn)個(gè)數(shù)R:讀數(shù)據(jù)的時(shí)候

數(shù)據(jù)的節(jié)點(diǎn)個(gè)數(shù)創(chuàng)建一個(gè)針對(duì)數(shù)據(jù)以及節(jié)點(diǎn)的hash函數(shù)idx

=

hash(key)協(xié)調(diào)器:延順指針?lè)较虻牡谝粋€(gè)有效節(jié)點(diǎn)“The

network

will

be

allowed

to

lose

arbitrarily

manymessages

sent

from

one

node

to

another”

[...]“For

a

distributed

system

to

becontinuouslyavailability,every

request

received

by

non-failing

nodein

the

system

must

result

ina

response”

/2010/04/problems-with-cap-and-yahoos-little.html?File

SystemMapReduce:編程模型TFS:

FilesystemHadoop

Distributed

FilesystemLiveJournalmemcachedperlbalMogileFilesystem

(分布式

)API

(php,

java,

perl,

python)Moose

Filesystem

(MFS,

POSIX(FUSE))Lustre,

HPCCephGlusterFSMogileFS主講:

(

),

1661815153htt

trackerMMogstoreMySQLtrackerw,1R,12T:

64M

MogileFSmogilefsd:

tracker進(jìn)程mogstored:storage進(jìn)程perlbal進(jìn)程trackerdatabase:

metastorestorage

node每個(gè)數(shù)據(jù)都有多個(gè)副本;2class:類(lèi)mogifsdmogstored75007501perlbal:http://pe l:

web

reverse

proxyMogileFStrackerstorage

nodedatabasetrackerdevice:/mogdata/dev1key:

0/00/0000/0000000001.fid0/00/0001//files/fstab

0/00/0000/0000000000006.fidnginx

mogilefsMogileFS

APImogielfs組件、刪除、查應(yīng)用層:無(wú)需特殊無(wú)單點(diǎn)失敗自動(dòng)文件傳輸中立,無(wú)特殊協(xié)議簡(jiǎn)單命名空間Shared-Nothingnon-RAID不能追加寫(xiě)、隨機(jī)寫(xiě)TrackerClient傳輸(mogilefsd),管理數(shù)據(jù)詢、修復(fù)以及數(shù)據(jù)通過(guò)HTTP/WebDAV服務(wù)上傳到Storagenode(mogstored)MySQL MogileFS

元數(shù)據(jù)(命名空間、位置)?一個(gè)MogileFS可以有多個(gè)用來(lái)存放不同文件(大小、類(lèi)型)內(nèi),key必須唯內(nèi),key可以相同同一個(gè)—不同Class文件屬性管理定義文件

在不同設(shè)備上的份數(shù)+Fid

定位文件?GlusterFS主講:

(

),

1661815153htt

glusterfsVirtual

Storage

PoolGlusterFSgatewayBrick1GlusterFSVolumeIO

SchedulervolmanagerGlusterFSGatewayVFSiocachereadaheaddistribute

/

striperep

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論