解釋測試衝突可序列化(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

不存在迴圈,因此它是衝突可序列化的。

更新於: 2021-07-08

2K+ 閱讀量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.