![分布式文件系統(tǒng)_第1頁](http://file4.renrendoc.com/view12/M08/07/30/wKhkGWcicCGAU4DKAADQbfTRD3Y518.jpg)
![分布式文件系統(tǒng)_第2頁](http://file4.renrendoc.com/view12/M08/07/30/wKhkGWcicCGAU4DKAADQbfTRD3Y5182.jpg)
![分布式文件系統(tǒng)_第3頁](http://file4.renrendoc.com/view12/M08/07/30/wKhkGWcicCGAU4DKAADQbfTRD3Y5183.jpg)
![分布式文件系統(tǒng)_第4頁](http://file4.renrendoc.com/view12/M08/07/30/wKhkGWcicCGAU4DKAADQbfTRD3Y5184.jpg)
![分布式文件系統(tǒng)_第5頁](http://file4.renrendoc.com/view12/M08/07/30/wKhkGWcicCGAU4DKAADQbfTRD3Y5185.jpg)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第12章分布式文件系統(tǒng)
分布式系統(tǒng)的關鍵部分:文件系統(tǒng)
文件服務和文件服務器(1)
文件服務:文件系統(tǒng)為客戶所提供的內容的
規(guī)范說明
它描述了可用的原語,它們所使用參數(shù)以及
執(zhí)行的操作
文件服務確定了文件系統(tǒng)對客戶的界面
文件服務器是一個運行于某些機器上的進程
并幫助實現(xiàn)文件服務
良好的分布式系統(tǒng),用戶不知道文件系統(tǒng)是
如何實現(xiàn)的
文件服務和文件服務器Q)
文件服務器是在某臺機器上運行的用戶進程
(有時是內核進程)
系統(tǒng)會有多個文件服務器,提供不同的文件
服務
12.1分布式文件系統(tǒng)設計
兩個不同的部件:文件服務和目錄服務
文件服務:單個文件上的操作相關,諸如讀、
寫和添加
目錄服務:維護目錄有關,在目錄上加、刪
文件等等
12.2.1文件服務的接口
什么是文件?
兩種文件類型
文件類型1
文件是一個不加解釋的字節(jié)序列
文件信息的意義與結構全部由應用程序來決
定
操作系統(tǒng)對之無興趣
文件類型2
文件可被組織成一串記錄
可使用操作系統(tǒng)調用來讀寫某個記錄
大多數(shù)支持把文件視作字節(jié)序列的概念
而不是關鍵記錄的序列
文件屬性
不包括在文件內容中的
有關文件的若干條信息
常見的屬性:所有者,文件大小,建立日期
和訪問許可
文件服務通常會提供一些對屬性進行讀寫操
作的原語
文件可否修改
文件被創(chuàng)建之后,是否可被修改
?通常它們可以
?“不可改變的(immutable)”文件
僅有CREATE和READ文件操作
一個文件一旦創(chuàng)建,它就不能改變
容易支持文件緩存和復制,
消除了由于文件改變而要更新所有副本所引
起的問題
文件保護⑴
?存取能力表
每一個用戶都持有一張稱作存取能力表的票
據(jù)
用于它訪問的每一個對象
存取能力指定了哪種形式的訪問是被允許的
文件保護(2)
?存取控制表
一個文件對應一個隱式或顯式的用戶表
指明可能訪問該文件的用戶及可能的訪問形
式
兩種類型文件服務:
-文件的上載/下載模式
?遠程訪問模式
文件上載/下載模式(1)
?只提供兩種操作:讀文件和寫文件
?讀操作:
是將整個文件從服務器送到申請的客戶
?寫操作:
將整個文件從客戶傳遞到服務器
在服務器和客戶之間移動整個文件
文件可以按需要而保存在內存或本地磁盤上
只提供了物理存儲和傳輸
文件上載/下載模式(2)
?優(yōu)點:概念上的簡潔性
沒有復雜的文件服務接口
整體文件傳送效率很高
?缺點:客戶端必須有足夠的存儲空間
只需文件一小部分,傳整個文件浪費
(a)上載/下載模式
客戶機向服務器發(fā)出訪問請求
(b)遠程訪問模式
遠程訪問模式
?文件服務提供
打開和關閉文件、文件讀和寫、文件內的移
動(LSEEK)
考察和修改文件屬性等等操作
?文件系統(tǒng)運行在服務器上,而不是客戶機上
.優(yōu)點:在客戶機上無須太多的空間,
消除零碎空間中放入整個文件的問題
12.1.2目錄服務器
?提供創(chuàng)建和刪除目錄、對文件命名和改名
把文件從一個目錄移向另一個目錄
?文件命名規(guī)則:
可以是從1到某個最大的數(shù)字,字符或一些
特殊字符
文件擴展名:
文件名劃分為兩部分,通常用一個分開
名字第二部分,稱為文件擴展名,標識了文
件的類型
擴展名而用一個顯性屬性來達到這個目的
目錄和子目錄
目錄下包含子目錄,可把相關文件放在一起
系統(tǒng)提供創(chuàng)建、刪除、進入以及移動子目錄
和從子目錄中查找文件的功能
層次型文件系統(tǒng)
子目錄可再包含子目錄從而形成樹型目錄
目錄的鏈接
某些系統(tǒng)中,能創(chuàng)建到任一目錄的鏈接或指
針
不僅構建樹,而且構建任意目錄圖,功能更
強
設計分布式文件系統(tǒng)的一個關鍵問題
所有機器和進程都應該對目錄層次有相同的
認識
應有一個全局性的,并為所有機器所確認的
根目錄
目錄的藪邕指向目錄
機器1
(a)也)
目錄樹在一臺機器內在在兩臺機器內的目錄圖
(b)所有客戶機對某文件系統(tǒng)都有相同認識的系統(tǒng)
(c)不同的客戶機對某文件系統(tǒng)有不同認識的系統(tǒng)
名稱解析透明性
定位透明性
服務器可以在網(wǎng)絡中隨意移動,其路徑名也
無需改動
文件在移動時無需改變其名稱時,稱為定位
獨立性
在路徑名中嵌入了服務器名稱顯然不是定位
獨立的
不易實現(xiàn)的,是一個在分布式系統(tǒng)中所希望
具有的性質
名稱解析三個處理方式:
?機器+路徑解析,諸如/machine/path或
machine:path
?把遠程文件系統(tǒng)安裝到本地文件層次中
?對所有機器都視同一致的單一名稱空間
前兩項容易實現(xiàn)
后者較困難,需要仔細地設計
兩級名稱解析(1)
?二級命名法
對用戶:文件(及其它對象)有符號名
對機器:有系統(tǒng)內部使用二進制名
要提供這兩個名字解析間的一種映射
在一個有多個自含文件服務器的系統(tǒng)中
二進制名實質上就是一個本地的I?結點數(shù)
通用名稱解析方案:
二進制名指向服務器和里面的某個特定文件
兩級名稱解析Q)
?符號鏈
符號鏈是一個目錄項,映射到一個(服務器
文件名)中的字符串上
通過字符串,可通過命名的服務器找到二進
制名
符號鏈本身實際上就是路徑名
兩級名稱解析(3)
?利用二進制名能力
查找一個ASCII碼名字
包括物理的或邏輯的機器號
或適當?shù)姆掌骶W(wǎng)絡地址
物理地址就可用來向服務器發(fā)消息
通過通過廣播或者在名字服務器上查找
能夠定位一個虛擬地址
12.1.3文件共享的語義
?多用戶文件共享要嚴格定義讀與寫語義
?UNIX語義學
當READ操作接著WRITE操作時
READ所返回的值正是剛寫入的
類似地,當兩個WRITE操作連續(xù)出現(xiàn)后跟
一個READ操作
讀的值是最后一次寫的值
?系統(tǒng)按絕對的時間序列執(zhí)行所有操作
且總是返回最后一次操作的值
單一服務器文件系統(tǒng)
在實踐中,單一服務器文件系統(tǒng)性能,通常很差
改進:允許客戶機在其私有空間中維護文件本地副
本
客戶在本地修改緩存區(qū)文件
接著另一個客戶從服務器讀取該文件
第二個客戶會得到一個陳舊的文件
解決方法:向服務器播送對緩存區(qū)文件的全部修改
概念盡管簡單,但處理是低效率的
(a)在單處理器上,當READ跟隨WRITE,返回的值是剛才寫入
的值
(b)有緩存區(qū)的分布式系統(tǒng)中,可能被返回的是陳舊值
替代解法:會話語義(sessionsemantics)
放松文件共享的語義學要求
新的規(guī)則:“對打開文件的修改,僅對修改
該文件的進程是初始可見的”
重新定義了正確的操作的實際行為
當A關閉文件時,它送一個副本給服務器
所以后續(xù)的READ得到了所需要的新值
會話語義的問題
?更多的客戶同時在同一個緩存區(qū)上修改會怎
樣?
?一種解決方法:
當每個文件依次關閉時,其值回送給服務器
?最后的結果取決于誰最后關閉
不可更改文件
操作只有CREATE與READ
雖然文件不能更新,但可以更新目錄
問題就不存在了
共享文件的第四個方法:原子事務
確保在事務中的所有調用都會按序執(zhí)行
不會被任何其它的、并發(fā)的事務所干擾
方式評論
UNIX語義在文件上的每一操作
對所有進程均是立即可見的
會話語義在文件關閉之前,
變化對其它進程是不可見的
不可變文件不能更新,簡化了共享和復制處理
原子事務所有修改有,全是-或-全不是的性質
12.2.1文件的使用
文件使用的模式
多數(shù)文件較?。ǖ陀?0k)
讀比寫要多得多
讀和寫是順序的,很少隨機訪問
多數(shù)文件壽命很短
文件共享是不尋常的
平均看進程只使用少量文件
存在不同特性的顯然不同的文件類型
12.2.2系統(tǒng)結構
“客戶機和服務器有差別嗎?”
在一些系統(tǒng)中(比如:NFS)
客戶機和服務器之間沒有差別
另一個極端
客戶機和服務器在軟硬件上是完全不同的
服務器甚至可以運行和客戶機不同的操作系
統(tǒng)
怎樣構造文件和目錄服務
一種方法:兩種服務組織到單獨的服務器里
用戶送一個符號名給目錄服務器
目錄服務器返回服務器可以識別的二進制文
件名
目錄在
文件文件
層次化目錄
層次化目錄有可能分段處在多個服務器上
經(jīng)常地尋找路徑名,特別是多重目錄服務器
費用會很昂貴
提示快捷棧
保存最近查找的名字以及查找的結果
另一種方法:把它們分隔開
擁有兩個服務器將需要更多的通訊
客戶機的狀態(tài)(1)
一個派認為服務器應是無狀態(tài)(stateless)的
當客戶機向服務器發(fā)出請求,服務器執(zhí)行了
這個請求
發(fā)送回答信息,在請求之間,沒有保留客戶
機狀態(tài)信息
每個請求必須自我包含信息
包含全文件名及文件內的偏移量,以允許服
務器完成工作
信息增加了消息的長度
客戶機的狀態(tài)Q)
另一派認為保留客戶機請求間的狀態(tài)信息是
完全有必要的
服務器狀態(tài)
容錯較短的請求消息
無需OPEN/CLOSE調用較好的性能
不在表上浪費服務器空間有可能預讀
打開文件數(shù)量無限制較易實現(xiàn)
客戶機失效時不受影響文件加鎖有可能
12.2.3緩存區(qū)處理(Caching)
四個地方存放文件:
服務器硬盤
服務器主存
客戶機硬盤(若存在的話)
客戶機主存
服務器硬盤
所有文件在服務器的硬盤上
文件可被所有客戶機所訪問
一個文件只有一套拷貝,不存在一致性問題
客戶機主內存服務器磁盤
網(wǎng)絡
可存放文件的四個地方
13-9
服務器主存
在服務器主存上緩存最近使用過的文件
可使性能獲得高的提升
主存一般都比磁盤小
需要算法決定文件的哪部分留在緩存區(qū)
客戶機的主存
客戶機主存有三種選擇
方案一最簡單:把緩存文件直接放在用戶進
程自有地址空間中
大多數(shù)進程只讀一個文件一項
所以在庫中設緩存區(qū)并沒有多大的價值
在客戶機主存中運用緩存區(qū)的不同方式
(a)無緩存區(qū)
(b)在每一進程中設緩存區(qū)
(c)在內核中設緩存區(qū)
(d)視作用戶進程的緩存區(qū)管理器
客戶機緩存區(qū)地方是內核
缺點是,需要內核的調用
這種緩存區(qū)比在進程中設緩存區(qū)效果為好
方案二:緩存區(qū)在不同的用戶級緩存區(qū)
管理器中
優(yōu)點:內核同文件系統(tǒng)代碼無關
容易編程,因為它它完全隔離
且更具靈活性
緩存區(qū)一致性
客戶機把不一致性引入了系統(tǒng)
方法評價
遍寫工作,但不影響寫的操作
延遲寫更好的性能,但可能帶來二義性
閉寫滿足會話語義要求
集中控制UNIX語義,但魯棒性和可伸縮性差
不可改變的文件
吸引力,可在機器上進行緩存處理的能力
不用擔心機器會有改變它的可能性
12.2.4復制性(replication)
分布式系統(tǒng)常常提供文件復制服務給他們的客戶
主要的原因中有:
可靠性:每一文件的各自獨立的副本增強了可靠性
有效性:即使在服務器關閉時,也允許訪問文件
性能:所有文件放在一臺服務器上會造成性能瓶頸
多服務器上復制文件,最輕載的將會被使用
符號名多重二進制地址(a)顯式文件復制
(b)空閑復制
(a)
(c)使用組的文件復制
13-12
三種復制
復制關鍵問題是透明度問題
顯式文件復制;空閑復制;組通訊
顯式文件復制
程序員控制整個復制進程
進程在某服務器上創(chuàng)建個文件
如果需要的話,可以在其他服務器上備份多份
如果目錄服務器允許文件的多份拷貝同時存在
那么備份的網(wǎng)上地址都與文件名相關
只要給出文件名,所有的備份都能被找到
空閑復制(Lazyreplication)
每個文件只在一服務器中建立
在服務器空閑時自動復制到另外的服務器中
復制過程對用戶透明
在后臺復制文件時,注意原文件是否已被修
改過
組通訊方式
全部“寫”調用同時發(fā)往所有服務器
后備文件與原件同時產(chǎn)生
空閑復制與組通訊方式主要有兩個區(qū)別:
在空閑復制方式中只須一個服務器地址,而
不是一個組;
空閑復制空閑時在后臺進行
而組通訊方式中,所有文件同時產(chǎn)生
如何更新
原本復制(primarycopyreplication)
一臺服務器被指定為主機。其它的當作輔機
已復制文件需要更新時,首先告訴主機,把主機文
件修改
然后主機命令輔機,要求它們修改
缺點:一旦被指定主機不能工作,對文件的修改不
能進行
復制更可靠的方法:“投票表決法(voting)”
基本思想:無論讀或寫已復制文件時,用戶應向多
臺服務器提出請求并獲得同意
"幽靈表決法(vot
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年危險品運輸車駕駛員協(xié)議合同
- 2025年債權減免與交易轉讓協(xié)議書
- 2025年住宅物業(yè)權益收購協(xié)議
- 2025年信用卡消費貸款合同樣本模板
- 2025年企業(yè)線上推廣宣傳服務合同
- 2025年混凝土材料供應與采購合同
- 2025年度土地開發(fā)聯(lián)盟協(xié)議
- 2025年企業(yè)土地置換協(xié)議
- 2025年企業(yè)收購兼并策劃合同范本
- 2025年軟件許可與服務合同模板
- 2025公文寫作考試題庫(含參考答案)
- 2025年湖南科技職業(yè)學院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 2024年安徽省高校分類考試對口招生語文試卷真題(含答案)
- 2024年安徽省省情知識競賽題庫及答案
- 2025年伊春職業(yè)學院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 2025版林木砍伐與生態(tài)修復工程承包合同2篇
- 課題申報參考:社會網(wǎng)絡視角下村改居社區(qū)公共空間優(yōu)化與“土客關系”重構研究
- 2025年八省聯(lián)考高考語文試題真題解讀及答案詳解課件
- 《山東膠州秧歌》課件
- 《倉庫安全管理培訓》課件
- 術前準備與術后護理指南
評論
0/150
提交評論