-
兩階段封鎖
鎖定
兩階段封鎖是在對任何數據進行讀、寫操作之前,事務首先要獲得對該數據的封鎖
- 中文名
- 兩階段封鎖
- 屬 性
- 數據庫術語
兩階段封鎖協議內容
1.在釋放一個封鎖之後,事務不能再獲得任何其他封鎖。
2. “兩段”鎖的含義
事務分為兩個階段:
第一階段是獲得封鎖,也稱為擴展階段;
第二階段是釋放封鎖,也稱為收縮階段。
例:
事務1的封鎖序列:
Slock A ... Slock B ... Xlock C ... Unlock C ... Unlock B ... Unlock A;
事務2的封鎖序列:
Slock A ... Unlock A ... Slock B ... Xlock C ... Unlock C ... Unlock B;
並行執行的所有事務均遵守兩段鎖協議,則對這些事務的所有並行調度策略都是可串
行化的。
所有遵守兩段鎖協議的事務,其並行執行的結果一定是正確的。事務遵守兩段鎖協議
是可串行化調度的充分條件,而不是必要條件。可串行化的調度中,不一定所有事務
都必須符合兩段鎖協議。
兩階段封鎖兩段鎖協議
一次封鎖法要求每個事務必須一次將所有要使用的數據全部加鎖,否則就不能繼續執
行,因此一次封鎖法遵守兩段鎖協議,但是兩段鎖協議並不要求事務必須一次將所有
要使用的數據全部加鎖,因此遵守兩段鎖協議的事務可能發生死鎖。
兩階段封鎖協議功能
兩類不同目的的協議
兩段鎖協議:保證併發調度的正確性
三級封鎖協議:在不同程度上保證數據一致性
遵守第三級封鎖協議必然遵守兩段協議
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:13次歷史版本
- 最近更新: 艾觅666