解釋 DBMS 中的衝突序列化
衝突序列化按與某些序列執行相同的方式對所有衝突操作進行排序。如果操作針對同一資料項且其中之一是寫入操作,則可以說這對操作存在衝突。
也就是說
Readi(x) readj(x) - 無衝突 讀一讀操作
Readi(x) writej(x) - 衝突 讀一寫操作
Writei(x) readj(x) - 衝突 寫一讀操作
Writei(x) writej(x) - 衝突 寫一寫操作
其中 I 和 j 表示兩個不同的事務 Ti 和 Tj。
優先順序圖
用於檢查衝突序列化。
檢查衝突序列化的步驟如下 -
為每個事務 T,在圖中放置一個節點或頂點。
對於每個衝突對,在 Ti 至 Tj 放一條邊。
如果圖中存在一個環路,則進度表不可衝突序列化,否則進度表可衝突序列化。
示例 1
存在環路,因此不可衝突序列化。
示例 2
不存在環路,因此可衝突序列化。
示例 3
不存在環路,因此可衝突序列化。
廣告