第8章磁盤管理(2)_第1頁
第8章磁盤管理(2)_第2頁
第8章磁盤管理(2)_第3頁
第8章磁盤管理(2)_第4頁
第8章磁盤管理(2)_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、12022-5-12磁盤的磁盤的I/O速度要比內(nèi)存低速度要比內(nèi)存低4-6個數(shù)量級個數(shù)量級分配一些內(nèi)存作為磁盤高速緩存可以極大分配一些內(nèi)存作為磁盤高速緩存可以極大地提高磁盤地提高磁盤I/O速度。速度。8.3 提高磁盤提高磁盤I/O速度的途徑速度的途徑22022-5-128.3.1磁盤高速緩存的形式磁盤高速緩存的形式n在內(nèi)存中開辟一個單獨的存儲空間作為磁盤在內(nèi)存中開辟一個單獨的存儲空間作為磁盤高速緩存。高速緩存。n把所有未利用的內(nèi)存空間變?yōu)橐粋€緩沖池把所有未利用的內(nèi)存空間變?yōu)橐粋€緩沖池 ,供分頁系統(tǒng)和磁盤供分頁系統(tǒng)和磁盤I/O共享。共享。32022-5-12數(shù)據(jù)交付方式數(shù)據(jù)交付方式數(shù)據(jù)交付:將磁盤

2、高速緩存中的數(shù)據(jù)傳送給數(shù)據(jù)交付:將磁盤高速緩存中的數(shù)據(jù)傳送給請求者進(jìn)程。請求者進(jìn)程。當(dāng)有訪問請求時,系統(tǒng)看所需的塊是否在高當(dāng)有訪問請求時,系統(tǒng)看所需的塊是否在高速緩存中。如果在,則可直接訪問緩存。否則,速緩存中。如果在,則可直接訪問緩存。否則,首先要將塊讀到高速緩存,再拷貝到所需的地首先要將塊讀到高速緩存,再拷貝到所需的地方方數(shù)據(jù)交付有兩種方式:數(shù)據(jù)交付有兩種方式:n數(shù)據(jù)交付數(shù)據(jù)交付 :將數(shù)據(jù)從緩存?zhèn)鞯竭M(jìn)程空間:將數(shù)據(jù)從緩存?zhèn)鞯竭M(jìn)程空間n指針交付指針交付 :將指向緩存中數(shù)據(jù)的指針傳給進(jìn):將指向緩存中數(shù)據(jù)的指針傳給進(jìn)程。程。42022-5-12置換算法置換算法如果高速緩存已滿,則需要進(jìn)行淘汰。如

3、果高速緩存已滿,則需要進(jìn)行淘汰。常用置換算法:最近最久未使用常用置換算法:最近最久未使用LRU、最少最少使用使用LFU等。還要考慮以下幾點等。還要考慮以下幾點u訪問頻率。訪問頻率。u可預(yù)見性??深A(yù)見性。 u數(shù)據(jù)的一致性。數(shù)據(jù)的一致性。 52022-5-12周期性寫回磁盤周期性寫回磁盤LRU算法中,那些經(jīng)常被訪問的盤塊可能會算法中,那些經(jīng)常被訪問的盤塊可能會一直保留在高速緩存中,而長期不被寫回磁盤一直保留在高速緩存中,而長期不被寫回磁盤中。留下了安全隱患。中。留下了安全隱患。解決之道:周期性寫回。周期性地強(qiáng)行將已解決之道:周期性寫回。周期性地強(qiáng)行將已修改盤塊寫回磁盤。周期一般為三十秒。修改盤塊寫

4、回磁盤。周期一般為三十秒。62022-5-128.3.2提高磁盤提高磁盤I/O速度的其它方法速度的其它方法n 提前讀提前讀 n 延遲寫延遲寫 n 優(yōu)化物理塊的分布優(yōu)化物理塊的分布n 虛擬盤虛擬盤72022-5-12提前讀提前讀在訪問文件時經(jīng)常是順序訪問,因此在讀當(dāng)在訪問文件時經(jīng)常是順序訪問,因此在讀當(dāng)前塊時可以提前讀出下一塊。前塊時可以提前讀出下一塊。提前讀已經(jīng)被廣泛應(yīng)用:提前讀已經(jīng)被廣泛應(yīng)用:UNIX、OS/2 、 Netware等。等。82022-5-12延遲寫延遲寫修改緩存中的數(shù)據(jù)后一般應(yīng)立即寫回磁盤,修改緩存中的數(shù)據(jù)后一般應(yīng)立即寫回磁盤,但該盤塊可能還會被修改,立即寫回會帶來很但該盤塊

5、可能還會被修改,立即寫回會帶來很大的開銷。大的開銷。置上延遲寫標(biāo)志。直到該盤塊淘汰時或周期置上延遲寫標(biāo)志。直到該盤塊淘汰時或周期性寫回時。性寫回時。延遲寫也被廣泛應(yīng)用:延遲寫也被廣泛應(yīng)用: UNIX、OS/2 等。等。92022-5-12優(yōu)化物理塊的分布優(yōu)化物理塊的分布優(yōu)化一個文件的物理塊分布,使訪問該文件優(yōu)化一個文件的物理塊分布,使訪問該文件時,磁頭的移動距離最小。時,磁頭的移動距離最小。n物理塊連續(xù)分配可以減少磁頭的移動。物理塊連續(xù)分配可以減少磁頭的移動。n增加物理塊的大小也可減少磁頭的移動。增加物理塊的大小也可減少磁頭的移動。102022-5-12虛擬盤虛擬盤利用內(nèi)存仿真磁盤,又稱利用內(nèi)

6、存仿真磁盤,又稱RAM盤。盤。虛擬盤同磁盤高速緩存的區(qū)別:虛擬盤同磁盤高速緩存的區(qū)別:n虛擬盤的內(nèi)容完全由用戶控制,用戶可見。虛擬盤的內(nèi)容完全由用戶控制,用戶可見。n緩存的內(nèi)容完全由系統(tǒng)控制,用戶不可見。緩存的內(nèi)容完全由系統(tǒng)控制,用戶不可見。112022-5-128.3.3 廉價磁盤冗余陣列廉價磁盤冗余陣列RAID(Redundant Arrays of Inexpensive Disk)。由伯克利提出,廣泛用于大中型計算機(jī)由伯克利提出,廣泛用于大中型計算機(jī)和網(wǎng)絡(luò)中。和網(wǎng)絡(luò)中。由一臺磁盤陣列控制器控制一組磁盤驅(qū)動器,由一臺磁盤陣列控制器控制一組磁盤驅(qū)動器,組成一個高度可靠、快速的大容量磁盤系統(tǒng)

7、。組成一個高度可靠、快速的大容量磁盤系統(tǒng)。n1、并行交叉存取、并行交叉存取 n2、RAID分級分級 n3、RAID的優(yōu)點的優(yōu)點122022-5-121、并行交叉存取、并行交叉存取 加快訪問速度加快訪問速度在系統(tǒng)中有多臺磁盤驅(qū)動器(在系統(tǒng)中有多臺磁盤驅(qū)動器(N)。)。存放數(shù)據(jù)時,將數(shù)據(jù)的第一塊放在第一個磁盤存放數(shù)據(jù)時,將數(shù)據(jù)的第一塊放在第一個磁盤上,第上,第N塊放在第塊放在第N個磁盤上。個磁盤上。這樣可以并行讀寫,極大地提高了速度。這樣可以并行讀寫,極大地提高了速度。123N132022-5-122、RAID分級分級 RAID0RAID7nRAID0 提供并行交叉存?。]有冗余校驗提供并行交叉存

8、?。]有冗余校驗?zāi)芰Γ┠芰Γ?至少兩個盤至少兩個盤nRAID1 偶數(shù)個盤,并行交叉存取,并把一個偶數(shù)個盤,并行交叉存取,并把一個磁盤的數(shù)據(jù)鏡像到另一個磁盤上。利用率磁盤的數(shù)據(jù)鏡像到另一個磁盤上。利用率50%。比傳統(tǒng)鏡像盤快。比傳統(tǒng)鏡像盤快。142022-5-12數(shù)據(jù)數(shù)據(jù)0數(shù)據(jù)數(shù)據(jù)1 1的備份的備份CPU磁盤磁盤0數(shù)據(jù)數(shù)據(jù)1數(shù)據(jù)數(shù)據(jù)0 0的備份的備份磁盤磁盤1圖圖152022-5-12nRAID3 利用一個奇偶校驗盤來完成數(shù)據(jù)校利用一個奇偶校驗盤來完成數(shù)據(jù)校驗功能。減少了冗余磁盤數(shù)驗功能。減少了冗余磁盤數(shù) nRAID5 無專門校驗盤,無專門校驗盤,校驗數(shù)據(jù)分布在多校驗數(shù)據(jù)分布在多個盤上個盤上。

9、一個磁盤故障時,控制器可從其他尚一個磁盤故障時,控制器可從其他尚存的磁盤上重新恢復(fù)存的磁盤上重新恢復(fù)/生成丟失的數(shù)據(jù)而不影響生成丟失的數(shù)據(jù)而不影響數(shù)據(jù)的可用性數(shù)據(jù)的可用性 。常用于。常用于I/O較頻繁的事務(wù)處理。較頻繁的事務(wù)處理。162022-5-12nRAID6 設(shè)置了一個專用的、可快速訪問的異設(shè)置了一個專用的、可快速訪問的異步校驗盤步校驗盤nRAID7 對對RAID6級的改進(jìn)。級的改進(jìn)。172022-5-123、RAID的優(yōu)點的優(yōu)點n可靠性高。除了可靠性高。除了RAID0,其余各級都采用了其余各級都采用了容錯技術(shù)。某個磁盤損壞時,不會造成數(shù)據(jù)丟容錯技術(shù)。某個磁盤損壞時,不會造成數(shù)據(jù)丟失。失

10、。n速度快??刹⑿写嫒?。速度快。可并行存取。n性能性能/價格比高。利用價格比高。利用RAID技術(shù)實現(xiàn)的大容技術(shù)實現(xiàn)的大容量快速存儲器,同量快速存儲器,同大型磁盤系統(tǒng)大型磁盤系統(tǒng)相比,體積和相比,體積和價格都是后都的價格都是后都的1/3??煽啃愿???煽啃愿?82022-5-12練習(xí)練習(xí)1、磁盤高速緩沖設(shè)在、磁盤高速緩沖設(shè)在()中中,其主要目的是其主要目的是()A、磁盤控制器、磁盤控制器 B、磁盤 C、內(nèi)存 D、CacheA、縮短尋道時間、縮短尋道時間 B、提高磁盤、提高磁盤I/O速度速度C、提高磁盤空間的利用率、提高磁盤空間的利用率D、保證數(shù)據(jù)的一致性、保證數(shù)據(jù)的一致性E、提高、提高CPU執(zhí)

11、行指令的速度。執(zhí)行指令的速度。2012192022-5-12練習(xí)練習(xí)2、下述錯誤的是、下述錯誤的是A、虛擬盤是一種易失性存儲器,因此它通常只有于、虛擬盤是一種易失性存儲器,因此它通常只有于存放臨時文件存放臨時文件B、優(yōu)化文件物理塊的分布可顯著減少尋道時間,因、優(yōu)化文件物理塊的分布可顯著減少尋道時間,因此能有效地提高磁盤此能有效地提高磁盤I/O速度速度C、對隨機(jī)訪問的文件,可通過提前讀提高對數(shù)據(jù)的、對隨機(jī)訪問的文件,可通過提前讀提高對數(shù)據(jù)的訪問速度訪問速度D、延遲寫可減少啟動磁盤的次數(shù),因此能等效地提、延遲寫可減少啟動磁盤的次數(shù),因此能等效地提高了磁盤高了磁盤I/O速度。速度。3、廉價磁盤冗余陣

12、列可組成一個大容量磁盤系統(tǒng),、廉價磁盤冗余陣列可組成一個大容量磁盤系統(tǒng),它利用它利用_技術(shù)來提高磁盤系統(tǒng)的存取速度,而利技術(shù)來提高磁盤系統(tǒng)的存取速度,而利用用_技術(shù)來增加磁盤系統(tǒng)的可靠性。技術(shù)來增加磁盤系統(tǒng)的可靠性。 202022-5-128.4 提高磁盤可靠性的技術(shù)提高磁盤可靠性的技術(shù)影響文件安全性的主要因素。影響文件安全性的主要因素。n人為因素人為因素存取控制機(jī)制存取控制機(jī)制n系統(tǒng)因素系統(tǒng)因素磁盤容錯技術(shù)磁盤容錯技術(shù)n自然因素自然因素后備系統(tǒng)后備系統(tǒng)n容錯技術(shù):通過在系統(tǒng)中設(shè)置容錯技術(shù):通過在系統(tǒng)中設(shè)置冗余部件冗余部件的的辦法,來提高系統(tǒng)可靠性的一種技術(shù)。辦法,來提高系統(tǒng)可靠性的一種技術(shù)。

13、212022-5-12磁盤容錯技術(shù)磁盤容錯技術(shù)磁盤容錯技術(shù):磁盤容錯技術(shù): SFT-1:低級磁盤容錯技術(shù),主要用于低級磁盤容錯技術(shù),主要用于防止防止磁盤表面磁盤表面發(fā)生缺陷所引起的數(shù)據(jù)丟失;發(fā)生缺陷所引起的數(shù)據(jù)丟失; SFT-2:中級磁盤容錯技術(shù),主要用于中級磁盤容錯技術(shù),主要用于防止防止磁盤驅(qū)動器和磁盤控制器磁盤驅(qū)動器和磁盤控制器故障引起的系故障引起的系統(tǒng)不能正常工作;統(tǒng)不能正常工作; SFT-3:高級磁盤容錯技術(shù)。高級磁盤容錯技術(shù)。222022-5-128.4.1 第一級容錯技術(shù)第一級容錯技術(shù) SFT-I主要用于防止因磁盤表面缺陷所造主要用于防止因磁盤表面缺陷所造成的數(shù)據(jù)丟失成的數(shù)據(jù)丟失1

14、)雙份目錄和雙份文件分配表雙份目錄和雙份文件分配表 文件目錄和文件分配表是文件管理所需的重要數(shù)據(jù)文件目錄和文件分配表是文件管理所需的重要數(shù)據(jù)結(jié)構(gòu)。結(jié)構(gòu)。在不同的磁盤上或在磁盤的不同區(qū)域中,分別建立在不同的磁盤上或在磁盤的不同區(qū)域中,分別建立雙份目錄表和雙份目錄表和FAT在系統(tǒng)每次啟動時都要進(jìn)行兩份目錄和分配表的檢在系統(tǒng)每次啟動時都要進(jìn)行兩份目錄和分配表的檢查。查。 232022-5-122)熱修復(fù)重定向和寫后讀校驗熱修復(fù)重定向和寫后讀校驗磁盤表面有少量缺陷時,采取一些補(bǔ)救措施后可繼磁盤表面有少量缺陷時,采取一些補(bǔ)救措施后可繼續(xù)使用。這些措施主要用于防止將數(shù)據(jù)寫入有缺陷的續(xù)使用。這些措施主要用于

15、防止將數(shù)據(jù)寫入有缺陷的盤塊中。盤塊中。n熱修復(fù)重定向熱修復(fù)重定向n寫后讀校驗寫后讀校驗242022-5-12熱修復(fù)重定向熱修復(fù)重定向系統(tǒng)將一定的磁盤容量(如系統(tǒng)將一定的磁盤容量(如2%-3%)作為熱)作為熱修復(fù)重定向區(qū),用于存放當(dāng)發(fā)現(xiàn)磁盤有缺陷時修復(fù)重定向區(qū),用于存放當(dāng)發(fā)現(xiàn)磁盤有缺陷時的待寫數(shù)據(jù),并對寫入該區(qū)的所有數(shù)據(jù)進(jìn)行登的待寫數(shù)據(jù),并對寫入該區(qū)的所有數(shù)據(jù)進(jìn)行登記,以便于以后對數(shù)據(jù)進(jìn)行訪問。記,以便于以后對數(shù)據(jù)進(jìn)行訪問。例如:系統(tǒng)要向第例如:系統(tǒng)要向第12磁道磁道10扇區(qū)寫數(shù)據(jù),但扇區(qū)寫數(shù)據(jù),但發(fā)現(xiàn)該扇區(qū)是壞的時,便將數(shù)據(jù)寫到熱修復(fù)區(qū)發(fā)現(xiàn)該扇區(qū)是壞的時,便將數(shù)據(jù)寫到熱修復(fù)區(qū)(如(如153磁道

16、磁道27扇區(qū))。以后要讀扇區(qū))。以后要讀12磁道磁道10扇扇區(qū)的數(shù)據(jù)時,便從區(qū)的數(shù)據(jù)時,便從153磁道磁道27扇區(qū)中讀。扇區(qū)中讀。252022-5-12寫后讀校驗寫后讀校驗為了保證所有寫入到磁盤的數(shù)據(jù)都能寫入完為了保證所有寫入到磁盤的數(shù)據(jù)都能寫入完好的盤塊中,應(yīng)該在每次寫數(shù)據(jù)時,又立即從好的盤塊中,應(yīng)該在每次寫數(shù)據(jù)時,又立即從磁盤上讀出該塊數(shù)據(jù),并同寫前的數(shù)據(jù)進(jìn)行對磁盤上讀出該塊數(shù)據(jù),并同寫前的數(shù)據(jù)進(jìn)行對比(校驗)。若兩者不一致,則認(rèn)為盤塊有缺比(校驗)。若兩者不一致,則認(rèn)為盤塊有缺陷,便將該數(shù)據(jù)寫入到熱修復(fù)區(qū)。并對該壞盤陷,便將該數(shù)據(jù)寫入到熱修復(fù)區(qū)。并對該壞盤塊進(jìn)行登記。塊進(jìn)行登記。2620

17、22-5-128.4.2 第二級容錯技術(shù)第二級容錯技術(shù)SFT-II第一級容錯只能用于防止磁盤表面部分故障第一級容錯只能用于防止磁盤表面部分故障造成的數(shù)據(jù)丟失。如果磁盤驅(qū)動器或磁盤控制造成的數(shù)據(jù)丟失。如果磁盤驅(qū)動器或磁盤控制器發(fā)生故障,則第一級容錯就無能為力了。器發(fā)生故障,則第一級容錯就無能為力了。n1)磁盤鏡像磁盤鏡像 n2)磁盤雙工磁盤雙工272022-5-121)磁盤鏡像磁盤鏡像 磁盤驅(qū)動器故障的容磁盤驅(qū)動器故障的容錯。錯。在同一磁盤控制器控在同一磁盤控制器控制下,增設(shè)一個完全相同制下,增設(shè)一個完全相同的磁盤驅(qū)動器。的磁盤驅(qū)動器。每次將數(shù)據(jù)寫主磁盤每次將數(shù)據(jù)寫主磁盤時,同時將數(shù)據(jù)也寫入到時

18、,同時將數(shù)據(jù)也寫入到備份磁盤。備份磁盤。一個磁盤驅(qū)動器發(fā)生一個磁盤驅(qū)動器發(fā)生故障時,必須立即發(fā)出警故障時,必須立即發(fā)出警告,盡快修復(fù)。告,盡快修復(fù)。磁盤利用率為磁盤利用率為50%磁盤控制器主機(jī)通道磁盤驅(qū)動器282022-5-122)磁盤雙工磁盤雙工磁盤控制器或控制器磁盤控制器或控制器與與CPU之間的通道故障的之間的通道故障的容錯。容錯。將兩臺磁盤驅(qū)動器分將兩臺磁盤驅(qū)動器分別接到兩個磁盤控制器上。別接到兩個磁盤控制器上。兩個磁盤上的數(shù)據(jù)完兩個磁盤上的數(shù)據(jù)完全相同。全相同。主機(jī)磁盤控制器磁盤控制器通道通道磁盤驅(qū)動器292022-5-128.4.3 基于集群技術(shù)的容錯功能基于集群技術(shù)的容錯功能SMP

19、對稱多處理對稱多處理(Symmetrical Multi-Processing),是指在一個計算機(jī)上匯集了一組處理),是指在一個計算機(jī)上匯集了一組處理器器(多多CPU),各各CPU之間共享內(nèi)存子系統(tǒng)以及總線結(jié)構(gòu)。之間共享內(nèi)存子系統(tǒng)以及總線結(jié)構(gòu)。 n一臺電腦不再由單個一臺電腦不再由單個CPU組成,而同時由多個處理組成,而同時由多個處理器運行操作系統(tǒng)的單一復(fù)本,并共享內(nèi)存和一臺計算器運行操作系統(tǒng)的單一復(fù)本,并共享內(nèi)存和一臺計算機(jī)的其他資源。機(jī)的其他資源。 n雖然同時使用多個雖然同時使用多個CPU,但是從管理的角度來看,但是從管理的角度來看,它們的表現(xiàn)就像一臺單機(jī)一樣。系統(tǒng)將任務(wù)隊列對稱它們的表現(xiàn)就

20、像一臺單機(jī)一樣。系統(tǒng)將任務(wù)隊列對稱地分布于多個地分布于多個CPU之上,從而極大地提高了整個系統(tǒng)之上,從而極大地提高了整個系統(tǒng)的數(shù)據(jù)處理能力。的數(shù)據(jù)處理能力。 n所有的處理器都可以平等地訪問內(nèi)存、所有的處理器都可以平等地訪問內(nèi)存、I/O和外部和外部中斷。中斷。 302022-5-128.4.3 基于集群技術(shù)的容錯功能基于集群技術(shù)的容錯功能集群集群:由一組互連的自主計算機(jī)組成統(tǒng)一的計由一組互連的自主計算機(jī)組成統(tǒng)一的計算機(jī)系統(tǒng)。算機(jī)系統(tǒng)。 n雙機(jī)熱備份模式。雙機(jī)熱備份模式。 n雙機(jī)互為備份模式。雙機(jī)互為備份模式。 n公用磁盤模式。公用磁盤模式。 312022-5-128.4.4 后備系統(tǒng)后備系統(tǒng)常用

21、的后備系統(tǒng)設(shè)備。常用的后備系統(tǒng)設(shè)備。 n磁帶機(jī)磁帶機(jī)n硬盤硬盤n光盤光盤 322022-5-128.5 數(shù)據(jù)一致性控制數(shù)據(jù)一致性控制 數(shù)據(jù)一致性的概念在數(shù)據(jù)庫中出現(xiàn)較多。數(shù)據(jù)一致性的概念在數(shù)據(jù)庫中出現(xiàn)較多。硬件支持主要是要求在系統(tǒng)中能配置一個高硬件支持主要是要求在系統(tǒng)中能配置一個高度可靠的存儲器系統(tǒng),或稱之為穩(wěn)定存儲器。度可靠的存儲器系統(tǒng),或稱之為穩(wěn)定存儲器。實現(xiàn)一個穩(wěn)定存儲器的措施是采用冗余技術(shù)。實現(xiàn)一個穩(wěn)定存儲器的措施是采用冗余技術(shù)。將一份信息同時存放在多個獨立的、非易失性將一份信息同時存放在多個獨立的、非易失性存儲器上。目前采用磁盤雙工方式來實現(xiàn)穩(wěn)定存儲器上。目前采用磁盤雙工方式來實現(xiàn)穩(wěn)

22、定存儲器。存儲器。332022-5-128.5.1 事務(wù)事務(wù)1、事務(wù)(、事務(wù)(Transaction)的定義的定義 事務(wù)是用于訪問和修改各種數(shù)據(jù)項的一個程事務(wù)是用于訪問和修改各種數(shù)據(jù)項的一個程序單位??梢钥醋魇且幌盗械淖x和寫操作。序單位??梢钥醋魇且幌盗械淖x和寫操作。事務(wù)的操作全部完成時要執(zhí)行托付事務(wù)的操作全部完成時要執(zhí)行托付(commit)操作來終止事務(wù)。事務(wù)失敗時要操作來終止事務(wù)。事務(wù)失敗時要執(zhí)行夭折(執(zhí)行夭折(Abort)操作。)操作。事務(wù)具有原子性:事務(wù)的操作要么全部完成,事務(wù)具有原子性:事務(wù)的操作要么全部完成,要么一個也不做。要么一個也不做。342022-5-122、 事務(wù)記錄事務(wù)記

23、錄記錄事務(wù)運行時所有對數(shù)據(jù)項的修改信息。記錄事務(wù)運行時所有對數(shù)據(jù)項的修改信息。又稱運行日志(又稱運行日志(Log)。)。該記錄包括:該記錄包括:n事務(wù)名事務(wù)名 事務(wù)的唯一標(biāo)識事務(wù)的唯一標(biāo)識n數(shù)據(jù)項名數(shù)據(jù)項名 被修改的數(shù)據(jù)項標(biāo)識被修改的數(shù)據(jù)項標(biāo)識n舊值舊值n新值新值當(dāng)一個事務(wù)發(fā)生時,將一個當(dāng)一個事務(wù)發(fā)生時,將一個事務(wù)記錄事務(wù)記錄也寫入事務(wù)記也寫入事務(wù)記錄表中。(錄表中。(Ti開始)記錄,(開始)記錄,(Ti修改)記錄,(修改)記錄,(Ti托托付)記錄付)記錄352022-5-123、 恢復(fù)算法恢復(fù)算法由于一組被事務(wù)由于一組被事務(wù)Ti修改的數(shù)據(jù)以及它們被修改前和修改的數(shù)據(jù)以及它們被修改前和修改后的

24、值,都能在事務(wù)記錄表中找到。因此當(dāng)系統(tǒng)修改后的值,都能在事務(wù)記錄表中找到。因此當(dāng)系統(tǒng)發(fā)生故障后,利用事務(wù)記錄進(jìn)行故障恢復(fù)。發(fā)生故障后,利用事務(wù)記錄進(jìn)行故障恢復(fù)。搜索整個事務(wù)記錄表:搜索整個事務(wù)記錄表:n對于已經(jīng)完成了各類操作的事務(wù),執(zhí)行對于已經(jīng)完成了各類操作的事務(wù),執(zhí)行redo操操作作把所有被事務(wù)把所有被事務(wù)Ti修改過的數(shù)據(jù)設(shè)置為新值(有修改過的數(shù)據(jù)設(shè)置為新值(有開始有托付記錄)開始有托付記錄)n對于未全部完成的事務(wù),執(zhí)行對于未全部完成的事務(wù),執(zhí)行undo操作操作把所把所有被事務(wù)有被事務(wù)Ti修改過的數(shù)據(jù)恢復(fù)為修改前的值(有開始修改過的數(shù)據(jù)恢復(fù)為修改前的值(有開始無托付記錄)無托付記錄)3620

25、22-5-128.5.2 檢查點檢查點1、檢查點、檢查點 (Check points)的作的作用用隨著系統(tǒng)的運行,事務(wù)記錄表會變得越來越隨著系統(tǒng)的運行,事務(wù)記錄表會變得越來越大,這樣當(dāng)發(fā)生故障時,搜索整個事務(wù)記錄表大,這樣當(dāng)發(fā)生故障時,搜索整個事務(wù)記錄表來進(jìn)行恢復(fù)就是一件非常費時的工作。因而引來進(jìn)行恢復(fù)就是一件非常費時的工作。因而引入檢查點。入檢查點。引入檢查點的主要目的引入檢查點的主要目的,是使對事務(wù)記錄表中是使對事務(wù)記錄表中事務(wù)記錄的清理工作經(jīng)?;聞?wù)記錄的清理工作經(jīng)常化,即每隔一定時間便即每隔一定時間便做一次下述工作。做一次下述工作。372022-5-128.5.2 檢查點檢查點1、檢查

26、點、檢查點 (Check points)的作用的作用首先:將駐留在易失性存儲器中的當(dāng)前事務(wù)記錄表首先:將駐留在易失性存儲器中的當(dāng)前事務(wù)記錄表中的所有記錄,輸出到穩(wěn)定存儲器中;中的所有記錄,輸出到穩(wěn)定存儲器中;其次:將駐留在易失存儲器中的所有已修改數(shù)據(jù),其次:將駐留在易失存儲器中的所有已修改數(shù)據(jù),輸出到穩(wěn)定存儲器中;輸出到穩(wěn)定存儲器中;然后:將事務(wù)記錄表中的然后:將事務(wù)記錄表中的記錄,輸出到記錄,輸出到穩(wěn)定存儲器中;穩(wěn)定存儲器中;最后:每當(dāng)出現(xiàn)一個最后:每當(dāng)出現(xiàn)一個記錄時,系統(tǒng)便執(zhí)記錄時,系統(tǒng)便執(zhí)行恢復(fù)操作,利用行恢復(fù)操作,利用redo和和undo過程實現(xiàn)恢復(fù)功能。過程實現(xiàn)恢復(fù)功能。382022

27、-5-122、新的恢復(fù)算法、新的恢復(fù)算法在引入檢查點后,當(dāng)發(fā)生故障后,只需對最在引入檢查點后,當(dāng)發(fā)生故障后,只需對最后一個檢查點以后開始的事務(wù)執(zhí)行恢復(fù)工作。后一個檢查點以后開始的事務(wù)執(zhí)行恢復(fù)工作。392022-5-128.5.3 并發(fā)控制并發(fā)控制在多進(jìn)程或多用戶系統(tǒng)中,可能有多個事務(wù)在多進(jìn)程或多用戶系統(tǒng)中,可能有多個事務(wù)在并發(fā)執(zhí)行,這些事務(wù)對數(shù)據(jù)的修改應(yīng)該是互在并發(fā)執(zhí)行,這些事務(wù)對數(shù)據(jù)的修改應(yīng)該是互斥的。(參見進(jìn)程同步)斥的。(參見進(jìn)程同步)可以利用可以利用PV操作來實現(xiàn)互斥。操作來實現(xiàn)互斥。但在數(shù)據(jù)庫和文件服務(wù)器中,應(yīng)用得最多的但在數(shù)據(jù)庫和文件服務(wù)器中,應(yīng)用得最多的還是較簡單且靈活的同步機(jī)制

28、:鎖。還是較簡單且靈活的同步機(jī)制:鎖。402022-5-12鎖鎖即操作系統(tǒng)中的一標(biāo)志位,表示資源可即操作系統(tǒng)中的一標(biāo)志位,表示資源可用,表示資源已被占用。用戶程序不能對鎖用,表示資源已被占用。用戶程序不能對鎖直接操作,必須通過操作系統(tǒng)提供的直接操作,必須通過操作系統(tǒng)提供的上鎖和開上鎖和開鎖原語鎖原語來操作。來操作。通常鎖用通常鎖用w w表示,上鎖開鎖原語分別用表示,上鎖開鎖原語分別用lock(w)lock(w)、unlock(w)來表示。來表示。 412022-5-12上鎖和開鎖原語上鎖和開鎖原語上鎖原語上鎖原語lock(w)可描述為:可描述為: while w=1 do no-op; w:=

29、1;開鎖原語開鎖原語unlock(w)可描述為:可描述為: W:=0;422022-5-12用原語實現(xiàn)進(jìn)程互斥用原語實現(xiàn)進(jìn)程互斥432022-5-121、互斥鎖、互斥鎖當(dāng)事務(wù)訪問一數(shù)據(jù)項時,給它上鎖當(dāng)事務(wù)訪問一數(shù)據(jù)項時,給它上鎖 ,訪問完,訪問完后開鎖。后開鎖。442022-5-122、互斥鎖和共享鎖、互斥鎖和共享鎖互斥鎖可以簡單實現(xiàn)事務(wù)的并發(fā)控制,但會互斥鎖可以簡單實現(xiàn)事務(wù)的并發(fā)控制,但會影響并發(fā)度。影響并發(fā)度。因為當(dāng)一個事務(wù)讀一個數(shù)據(jù)項時,另一事務(wù)因為當(dāng)一個事務(wù)讀一個數(shù)據(jù)項時,另一事務(wù)應(yīng)該也能讀同一數(shù)據(jù)項,但上互斥鎖時沒有這應(yīng)該也能讀同一數(shù)據(jù)項,但上互斥鎖時沒有這種可能。種可能。所以引入共

30、享鎖:事務(wù)讀對象時申請共享鎖,所以引入共享鎖:事務(wù)讀對象時申請共享鎖,若該對象未上鎖或上的是共享鎖,則可以申請若該對象未上鎖或上的是共享鎖,則可以申請到。事務(wù)寫對象時申請互斥鎖,只有對象未上到。事務(wù)寫對象時申請互斥鎖,只有對象未上鎖時才能申請到。鎖時才能申請到。452022-5-128.5.4 8.5.4 重復(fù)數(shù)據(jù)的數(shù)據(jù)一致性問題重復(fù)數(shù)據(jù)的數(shù)據(jù)一致性問題 為了保證數(shù)據(jù)的安全性,最常用的做法為了保證數(shù)據(jù)的安全性,最常用的做法是把關(guān)鍵文件或數(shù)據(jù)結(jié)構(gòu)復(fù)制多份,分別是把關(guān)鍵文件或數(shù)據(jù)結(jié)構(gòu)復(fù)制多份,分別存儲在不同的地方,當(dāng)主文件失效時,還存儲在不同的地方,當(dāng)主文件失效時,還有備份文件可以使用。顯然,主文件中的有備份文件可以使用。顯然,主文件中的數(shù)據(jù)應(yīng)與各備份文件中的對應(yīng)數(shù)據(jù)相一致。數(shù)據(jù)應(yīng)與各備份文件中的對應(yīng)數(shù)據(jù)相一致。 462022-5-126.7.4 6.7.4 重復(fù)數(shù)據(jù)的數(shù)據(jù)一致性問題重復(fù)數(shù)據(jù)的數(shù)據(jù)一致性問題 1. 重復(fù)文件的一致性重復(fù)文件的一致性 圖 6-28 UNIX類型的目錄 472022-5-126.7.4 6.7.4 重復(fù)數(shù)據(jù)的數(shù)據(jù)一致性問題重復(fù)數(shù)據(jù)的數(shù)據(jù)一致性問題 在有重復(fù)文件時,如果一個文件拷貝被修改,則在有重復(fù)文件時,如果一個文件拷貝被修改,則必須也同時修

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論