若Wi(M)表示一個交易Ti 將名為M 的資料寫入(Write)資料庫中,Ri(M)表示一個
交易Ti 將名為M 的資料讀入(Read)程式變數中,若一個資料交易包括有三筆資
料變數X、Y、Z 和三個交易T1、T2、T3,每個交易在執行完最後一個動作就會立
刻提交(Commit),交易T1、T2、T3 如下:
T1:R1(X),W1(X),R1(Y),W1(Y)
T2:R2(Z),R2(X),W2(X),R2(Y),W2(Y)
T3:R3(Y),R3(Z),W3(Y),W3(Z)
下列有三個和交易T1、T2、T3 的排程分別為S1、S2、S3,其執行情形如下:
S1:R3(Y),R3(Z),R1(X),W3(Y),W1(X),R2(Z),W3(Z),R2(X),W2(X),R1(Y),R2(Y),
W1(Y),W2(Y)
S2:R1(X),W1(X),R1(Y),W1(Y),R3(Y),R3(Z), W3(Y),W3(Z),R2(Z),R2(X),W2(X),
R2(Y),W2(Y)
S3:R3(Y),R3(Z),R1(X),W1(X),W3(Y),W3(Z), R2(Z),R2(X),W2(X),R1(Y),W1(Y),
R2(Y),W2(Y)
請分別畫出S1、S2、S3 的可順序圖(Precedence Graph)。(9 分)
請分別說明S1、S2 和S3 是否為衝突可序性(Conflict-Serializable)?若是的話,
請給一個等價可序性執行順序。(6 分)
請利用嚴格二階段鎖定法(Strict Two-Phase Locking)加入一些鎖定(Locking)
和解除鎖定(Unlocking)到交易T3,使T3 成為嚴格及可順序的交易。(5 分)