资源描述:
《分散式档案系统(ppt版)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
分散式系統分散式檔案系統1第一页,共六十九页。
1大綱系統設計檔案服務介面目錄服務介面命名(mìngmíng)通透檔案共享系統實作檔案與目錄結構服務形式2第二页,共六十九页。
2大綱快取快取機制快取一致性檔案複製根本概念(gàiniàn)複製方法摘要3第三页,共六十九页。
3系統設計分散式檔案系統的重點就是將各部電腦的儲存裝置整合在一起(yīqǐ)分散式檔案系統架構中有兩個重要的概念檔案服務(fileservice)檔案伺服器(fileserver)分散式檔案系統必須讓使用者感覺上是在使用傳統的集中式檔案系統典型的分散式檔案系統服務可以分為兩部份檔案服務目錄服務4第四页,共六十九页。
4檔案系統檔案系統的工作就是如何快速找出一個檔案的實際位置,以維護整個檔案目錄的架構。檔案會有一些附加屬性:檔案的擁有者、檔案大小、建檔日期與取用權限等。有些檔案服務能夠讓使用者可以自己(zìjǐ)更改或新增。分散式檔案系統中保護檔案的作法與集中式檔案系統相同。都是使用存取控制清單(AccessControlList,ACL),每一個檔案都有一份清單,記錄所有可以使用檔此檔案的使用者。5第五页,共六十九页。
5檔案是否可以被修改對於檔案系統設計的困難度影響也很大。修改檔案時必須備份以防止意外(yìwài)發生。有些分散式檔案系統只提供建立新檔和讀取檔案兩種操作,設計上也比較簡單,通常也很容易支援檔案快取和檔案複製。6第六页,共六十九页。
6檔案服務介面分散式檔案系統是使用存取控制清單來記錄所有可以使用此檔案的使用者檔案服務可分為上兩類傳/下載模式(móshì),系統只提供讀取檔案和寫入檔案遠端存取模式,伺服端提供大量的檔案操作功能7第七页,共六十九页。
7上傳/下載模式(móshì)示意圖檔案檔案當客戶端確定寫入檔案時,檔案才回傳給伺服端檔案傳到客戶端客戶端伺服端所有修改(xiūgǎi)動作皆在客戶端完成8第八页,共六十九页。
8遠端存取模式(móshì)示意圖檔案伺服端客戶端修改(xiūgǎi)檔案是藉由大量的操作訊息通知伺服端,由伺服端代為完成9第九页,共六十九页。
9目錄服務介面目錄服務介面主要是提供建立與刪除目錄、檔案命名與改名、檔案搬移等功能集中式檔案系統中的目錄介面可在目錄下建立子目錄而形成樹狀結構在分散式環境下檔案很可能分散在不同(bùtónɡ)電腦上,所以分散式檔案系統的目錄結構又更為複雜10第十页,共六十九页。
10集中式檔案系統示意(shìyì)圖ABCDE伺服器11第十一页,共六十九页。
11分散式檔案系統示意(shìyì)圖ABCDE12110伺服器A伺服器B計數器12第十二页,共六十九页。
12目錄服務介面是否要讓所有客戶端都看到相同(xiānɡtónɡ)的目錄結構是設計分散式目錄服務時一個重要議題根本上有兩種做法一種做法是讓客戶端看到相同的目錄結構另一種做法是讓客戶端看到不同的目錄結構13第十三页,共六十九页。
13分散式目錄服務示意(shìyì)圖檔案伺服器1客戶端1客戶端1(c)顯示不同的目錄結構ABCDEFGABCDEFGABCDEFGABCDEFGABCD客戶端2客戶端2EFG檔案伺服器2(a)兩部檔案伺服器(b)顯示相同的目錄結構根目錄根目錄根目錄根目錄14第十四页,共六十九页。
14命名(mìngmíng)命名是邏輯與實質物體間之對映使用者所處理的是由檔案名稱所代表之理輯資料物體,而系統則是直接操作儲存於磁軌上的實質資料區段。使用者通常以一個文字名稱來使用一個檔案。該文字名稱對映至一個低階的數值識別字,而識別字再對映至磁碟區段。此種多層次之對映提供(tígōng)使用者一種檔案抽象化概念,而將檔案實際上如何及在何處儲存之細節均隱藏起來。15第十五页,共六十九页。
15命名(mìngmíng)通透性命名通透性就是檔案的命名〔包含路徑〕是否(shìfǒu)會影響檔案系統的設計分散式檔案系統中設計目錄結構有以下二種考量位置通透性檔案路徑並不會顯示出檔案伺服器的實際位置檔案之命名不應洩漏該檔案實質儲存地點位置獨立性當檔案實際所在位置搬移時,不必更改檔案路徑也可以使用原本的檔案當檔案實質儲存地點改變時,該檔案之名稱並不需要改變16第十六页,共六十九页。
16命名(mìngmíng)通透性在分散式檔案系統中實作檔案和目錄命名有三種常用的方法(fāngfǎ)掛載遠端檔案系統到本地端檔案目錄結構中NFS:NetworkFileSystem電腦名稱加上路徑名稱:“/server/user/file1〞,也就是「電腦名稱/路徑名稱」系統將所有資源整合起來,使用統一的目錄結構,讓所有電腦看到的會是相同的目錄結構17第十七页,共六十九页。
17檔案存取與保護預防磁碟實體上的資料損毀最常見的方法就是(jiùshì)定期地備份整個檔案系統中的資料。檔案存取權限的管制對於檔案,讀取、寫入以及執行等使用權限的設定。18第十八页,共六十九页。
18檔案存取最常使用的檔案存取方法有以下三種:循序(xúnxù)存取利用檔案指標從頭開始往後移動,便可循序讀取整個檔案內容。檔案結尾(endoffile)讀或寫檔案開頭(beginoffile)檔案指標(filepointer)19第十九页,共六十九页。
19檔案存取(續)檔案存取的方法隨機存取檔案由多個大小(dàxiǎo)固定的區塊所組成,可直接將檔案指標移動到某個特定的區塊,並一次讀取整個區塊。區塊區塊區塊區塊區塊檔案指標檔案開頭檔案結尾20第二十页,共六十九页。
20檔案存取(續)檔案存取的方法索引(suǒyǐn)存取針對檔案事先做好的索引結構來進行讀取。姓名指標王二李四張三編號性別年齡2476男1221第二十一页,共六十九页。
21存取權限檔案系統會加以(jiāyǐ)管制的幾種檔案存取權限:讀取(Read)寫入(Write)執行(Execute)擴展(Append)刪除(Delete)表列(List)將一個檔案可能會進行的存取權限分門別類之後,便可以針對各個不同的存取作控管。22第二十二页,共六十九页。
22存取群組減少存取的方式(fāngshì)讀取(Read)修改(Write)執行(Execute)將使用者分類,同一類使用者擁有相同的存取權限。如Unix系列的作業系統分為:擁有者〔Owner〕群組〔Group〕其他〔Other〕23第二十三页,共六十九页。
23存取群組(續)檔案的存取控制列表(lièbiǎo)索引檔案名稱檔案擁有者所屬團體其他使用者其他資訊檔案指標0view.gifRWXR-…1test.exeRWXRWR…2config.binRWXRWXRWX………n24第二十四页,共六十九页。
24檔案共享集中式檔案系統中允許檔案共享,但需要能預防讀寫發生問題。並且利用檔案指標來達成分散式檔案系統只要客戶端沒有檔案快取的機制、並且將檔案的操作都集中到同一部(yībù)伺服器中處理,就可模擬成集中式檔案系統的操作方式當檔案被多個客戶端同時進行修改時,檔案伺服器可以用資源的互斥機制作同步的控管,每一次只能有一個客戶端將修改的資料寫入磁碟。因此會導致延遲。25第二十五页,共六十九页。
25檔案共享在分散式檔案系統中,對於檔案共享問題所提出(tíchū)的幾種解決方法UNIX語意Session語意(交談語意)Immutable語意不可分割交易26第二十六页,共六十九页。
26UNIX語意UNIX系統中所採用的策略檔案存取直接(zhíjiē)對應到磁碟實體儲存位置上其他使用者可立即從實體區塊中看到修改後的結果當共享檔案被某個使用者修改時,檔案系統設計上是以資源(Resource)的互斥(MutualExclusion)作為實際上的應用檔案系統每次都只會有一個使用者將修改的資料寫入實體磁碟區競爭情形下會導致延遲及不可預期的結果27第二十七页,共六十九页。
27Session語意(交談語意)當共享檔案被某個使用者修改時,結果不會立即反應給其他的使用者,只有(zhǐyǒu)當該使用者將檔案關閉並重新開啟(完成一個Session後)才會反映該修改的結果檔案存取對應到暫時的映像(image)其他使用者不可立即從實體區塊中看到修改後的結果問題先將檔案資料回存的使用者可能會失去其所修改的結果(遭後者覆蓋)沒對共享之檔案修改做任何保護動作28第二十八页,共六十九页。
28Immutable語意檔案在被建立者宣告為共享後,任何使用者皆不可(bùkě)修改其中的內容檔案的名稱亦不可被重複使用這種語意在分散式系統中比較自然分散式系統的檔案共享根本上就是只允許唯讀但是允許檔案取代功能29第二十九页,共六十九页。
29當有兩個客戶端同時要取代同一個檔案時當一個客戶端要取代檔案,而這個檔案正被其他客戶端讀取警告讀取的客戶端乾脆不理(bùlǐ),讓客戶端從快取中讀取直到問題發生為止30第三十页,共六十九页。
30不可分割(bùkěfēnɡē)交易該筆交易中不能被相關交易中斷當客戶端要操作檔案時,會先已開始交易的訊息通知伺服器要利用不可分割交易的功能(gōngnéng)接著是對檔案的一些讀取與寫入的操作。完全執行完畢完全不曾執行過31第三十一页,共六十九页。
31集中式檔案系統示意(shìyì)圖ABCdedefg行程(xíngchéng)1.寫入f2.寫入g3.讀取defg原始(yuánshǐ)的檔案32第三十二页,共六十九页。
32分散式檔案系統示意(shìyì)圖defgA2.寫入defg客戶端1de檔案伺服器deB客戶端21.讀取de3.讀取de33第三十三页,共六十九页。
33系統實作在實作分散式檔案系統時,必需考慮以下的問題檔案目(ànmù)錄架構服務形式快取檔案取代檔案一致性34第三十四页,共六十九页。
34目錄結構分割可分為主要(zhǔyào)分割存有作業系統及相關系統檔案供電腦啟動延伸分割可再細分為數個邏輯分割,主要是用來儲存使用者的檔案。每個磁碟的分割都有裝置目錄或卷表用來記錄此分割中的所有目錄及檔案資訊。35第三十五页,共六十九页。
35單層目錄在一個分割中,使用者可以(kěyǐ)建立多個目錄,在每個目錄中也可以(kěyǐ)放置多個檔案,這樣利用目錄結構來儲存檔案,稱為單層目錄。分 割bindevsbinbootetc檔案檔案檔案檔案檔案36第三十六页,共六十九页。
36雙層目錄單層目錄結構未考慮到多使用者共用(ɡònɡyònɡ)的檔案系統,故採用雙層目錄。分割/根目錄KevinTom檔案Frankbindevbindevbindev使用者目 錄檔案檔案檔案檔案檔案37第三十七页,共六十九页。
37樹狀目錄雙層目錄結構可視為簡單的樹狀結構,但缺乏使用(shǐyòng)上的彈性。大多數的作業系統都是以樹狀目錄結構的檔案系統為基礎。目錄中還可以再建立子目錄,子目錄與檔案也可以並存於同一個目錄中。系統實作時需注意到:檔案與目錄的區分,因為檔案與子目錄可以同時存在於同一個目錄之下。38第三十八页,共六十九页。
38樹狀目錄(續)分割/根目錄binhomebootetcMikeJasonDocssnmp檔案檔案檔案檔案檔案39第三十九页,共六十九页。
39非循環圖狀目錄共用目錄可以任意存在於檔案系統中。利用符號鏈結〔symboliclink〕連結到共用目錄。保護機制當一個使用者讀取某個檔案時,必須將該檔案鎖定〔Lock〕。必須定期(dìngqī)搜尋檔案系統中的無效符號鏈結,然後將其刪除並回收磁碟空間。40第四十页,共六十九页。
40非循環圖形目錄(續)分割/根目錄boothomeetcMikeJasonDocsutility檔案檔案檔案41第四十一页,共六十九页。
41一般(yībān)圖狀目錄最大問題檔案搜尋時,必須判斷該目錄是否(shìfǒu)已經被搜尋過,以防止無窮迴圈。分割/根目錄binhomeetcMikeJasonutility檔案檔案檔案42第四十二页,共六十九页。
42目錄存取指令(zhǐlìng)在某些檔案系統中,目錄也是被當成一般檔案來處理,只是會另外加上一個可供分辨的特殊字元。存取指令(zhǐlìng)搜尋新增檔案刪除檔案更改檔名43第四十三页,共六十九页。
43目錄與檔案路徑假设所要存取的檔案不在同一層目錄中,就必須加上目錄路徑的參數。目錄路徑可分為兩種絕對路徑從磁碟的分割(fēngē)代號〔或根目錄〕開始。相對路徑以現行目錄作為參考位置對所要指定目錄的相對位置。44第四十四页,共六十九页。
44目錄存取保護為了平安性的考量針對不同(bùtónɡ)的使用者或是群組作存取權限上的控管。目錄的存取保護實作上的問題必須考慮是否也實作在其子目錄中。假设父目錄與子目錄設定不同,要如何取捨。45第四十五页,共六十九页。
45檔案系統掛載一個檔案系統必須經過安裝才能開始運作。作業系統中給予檔案系統一個名稱,以及連結上此檔案系統的掛載點〔mountingpoint〕。透過之前所給予的掛載點,便可以(kěyǐ)讀取到其中的目錄結構。掛載的檔案系統甚至可以是網路上其他電腦中的檔案系統。46第四十六页,共六十九页。
46檔案與目錄結構解決檔案與目錄結構的有兩種做法將檔案服務和目錄服務整合在一起,由單一個伺服器作檔案及目錄服務,所有(suǒyǒu)使用者都與這個伺服器溝通檔案服務與目錄服務分開在不同的伺服器,當有檔案操作的要求時,先跟提供目錄服務的伺服器查詢,再利用這個編號資料跟檔案伺服器溝通47第四十七页,共六十九页。
47檔案與目錄結構系統如果是使用目錄服務與檔案服務分開的做法,系統可以有二種做法查詢的方式反覆查詢的方式主動查詢的方式系統採用快取的機制,把最近查詢的檔案資訊儲存在(cúnzài)快取中,之後如有對相同檔案的操作,即可馬上回應檔案資訊48第四十八页,共六十九页。
48反覆查詢方式(fāngshì)示意圖客戶端/A//B//C/目錄伺服器查詢/A/B/C/g.txt回應/B/C/回應檔案資訊49第四十九页,共六十九页。
49主動查詢方式(fāngshì)示意圖客戶端/A//B//C/目錄伺服器查詢/C/g.txt回應檔案資訊查詢/B/C/g.txt查詢/A/B/C/g.txt50第五十页,共六十九页。
50服務形式(xíngshì)檔案服務可分為兩類具備狀態服務不具(bùjù)狀態服務51第五十一页,共六十九页。
51具備狀態服務具備狀態檔案伺服器(statefulfileservice)從其磁碟中擷取一些關於檔案之資訊,將之儲存於其記憶體中,並交給用戶一個關聯的識別名稱,該名稱對用戶及開啟檔案而言均是獨有的一項具備狀態服務之特徵為於一個會議期間,用戶與伺服器間之關聯性質。在關閉檔案時或藉由廢置空間回收(huíshōu)(garbage-collection)機構,伺服器便可再取回用戶不再使用之主記憶體空間。在具備狀態服務之方法中,開啟用戶之資訊保存在伺服器的主記憶體中,此方式即為容錯之主要重點所在。AFS是一個具備狀態的檔案服務52第五十二页,共六十九页。
52不具(bùjù)狀態服務不具狀態檔案伺服器(statelessfileservice)藉著提出獨立的要求來防止此項狀態資訊。亦即在每項要求中指定(zhǐdìng)檔案及完整地指明所要求檔案中之位置。伺服器並不需要在主記憶體中保存一個已開啟檔案的表格,但通常為提高效率均會如此做。每項檔案運作均獨立完成且非會議之一部份,故開啟或關閉運作完全是多餘的。由讀取及寫入動作來取代遠程訊息(或取代快取記憶體之查尋)。用戶最後的關閉動作也僅屬於局部之運作。NFS是一個不具備狀態的檔案服務53第五十三页,共六十九页。
53具/不具(bùjù)備狀態服務的優點比較表具備狀態服務的優點不具狀態服務的優點檔案操作訊息較短容錯能力較佳系統效能較佳不需特殊的開檔和關檔可預讀資訊伺服器不用維護狀態紀錄如一的操作較容易達成可開檔案數目無限可將檔案上鎖客戶端當機不影響系統運作54第五十四页,共六十九页。
54快取傳統的集中式檔案系統中,採用快取是為了降低磁碟I/O次數,以此達到提昇系統效能(xiàonéng)的目的分散式檔案系統中,採用快取主要是降低網路傳輸的負擔55第五十五页,共六十九页。
55快取機制快取的根本想法是將伺服器或客戶端的主記憶體或是客戶端磁碟當成快取,把最近使用過的檔案存入使用快取降低伺服器的磁碟I/O次數和網路傳輸的負擔客戶端和伺服端較常採用主記憶體當作快取主記憶體快取會比磁碟快取有效率得多。使用主記憶體當快取,客戶端就可以(kěyǐ)不需要磁碟伺服端用主記憶體當快取可減少磁碟I/O次數56第五十六页,共六十九页。
56客戶端/伺服器的架構伺服器主記憶體伺服器磁碟客戶端主記憶體客戶端磁碟(選擇性的)網路57第五十七页,共六十九页。
57快取機制採用快取有二個衍生的問題必須解決快取的根本(gēnběn)單位是什麼如何處理快取被填滿的問題58第五十八页,共六十九页。
58快取一致性處理快取一致性的問題大致(dàzhì)有四種方法中控伺服端統一處理同步的問題關寫關檔時才傳送更新訊息給伺服端延寫延遲傳送更新訊息給伺服端寫穿每次寫檔立即傳送更新訊息給伺服端59第五十九页,共六十九页。
59檔案複製檔案複製功能可以增加分散式系統的可靠性系統效能雖然系統必須提供(tígōng)更多的儲存空間來存放這些多餘的檔案複本,但是在許多的分散式系統中仍會提供(tígōng)檔案複製的功能60第六十页,共六十九页。
60檔案複製的根本(gēnběn)概念提供檔案複製的服務主要(zhǔyào)理由如下複製檔案到不同電腦存放可以增加系統的可靠性系統中假设某部檔案伺服器毀損,因檔案已經備份到另一部檔案伺服器,所以程式仍然能使用檔案可以分擔檔案伺服器的負擔檔案複製的服務可增加系統的可靠性及系統效能61第六十一页,共六十九页。
61複製方法(fāngfǎ)有三種處理檔案複製的方法(fāngfǎ)程式自行處理檔案複製延遲式的檔案複製利用群組的方式達到檔案複製功能檔案複製時,目錄伺服器會記錄檔案在各個伺服器上取得的檔案識別代號,讓客戶端或系統知道這些檔案被複製到什麼地方62第六十二页,共六十九页。
62各種檔案複製形式(xíngshì)客戶端式的檔案複製延遲式的檔案複製群組式的檔案複製63第六十三页,共六十九页。
63目錄伺服器上的複製檔案識別代號表dis.txtpda.txt1.331.521.221.873.224.11檔案名稱檔案識別代號FS1FS2FS364第六十四页,共六十九页。
64客戶端式的檔案複製FS1FS2FS3客戶端檔案伺服器65第六十五页,共六十九页。
65延遲式的檔案複製FS1FS2FS3客戶端檔案伺服器66第六十六页,共六十九页。
66群組式的檔案複製FS1FS2FS3客戶端群組67第六十七页,共六十九页。
67TheEnd68第六十八页,共六十九页。
68内容(nèiróng)总结分散式系統。分散式檔案系統是使用存取控制清單來記錄所有可以使用此檔案的使用者。修改檔案是藉由大量的操作訊息通知伺服端,由伺服端代為完成。集中式檔案系統中的目錄介面可在目錄下建立(jiànlì)子目錄而形成樹狀結構。是否要讓所有客戶端都看到相同的目錄結構是設計分散式目錄服務時一個重要議題。該文字名稱對映至一個低階的數值識別字,而識別字再對映至磁碟區段。將使用者分類,同一類使用者擁有相同的存取權限。該筆交易中不能被相關交易中斷。68第六十九页,共六十九页。