DBMS | How to test if two schedules are View Equal or not ?

2

Two schedules S1 and S2 are said to be view equal iff following below conditions are satisfied :

1) Initial Read
If a transaction T1 reading data item A from initial database in S1 then in S2 also T1 should read A from initial database.

  T1     T2     T3
-------------------
        R(A)
 W(A)          
               R(A)
        R(B)

Transaction T2 is reading A form initial database.

2)Updated Read
If Ti is reading A which is updated by Tj in S1 then in S2 also Ti should read A which is updated by Tj.

  T1     T2     T3         T1    T2    T3                   
-------------------       ----------------
  W(A)                    W(A)       
        W(A)                           R(A)
                R(A)             W(A)

Above two schedule are not view equal as in S1 :T3 is reading A updated by T2, in S2 T3 is reading A updated by T1.

3)Final Write operation
If a transaction T1 updated A at last in S1, then in S2 also T1 should perform final write operations.

 T1       T2        T1     T2            
------------    ---------------
 R(A)              R(A)
         W(A)      W(A)
 W(A)                    W(A)

Above two schedule are not view as Final write operation in S1 is done by T1 while in S2 done by T2.

View Serializability: A Schedule is called view serializable if it is view equal to a serial schedule (no overlapping transactions).

Below are the previous Year Gate Question asked on this topic
http://quiz.geeksforgeeks.org/dbms/transactions-and-concurrency-control/

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above

GATE CS Corner    Company Wise Coding Practice

Recommended Posts:



2 Average Difficulty : 2/5.0
Based on 9 vote(s)










Writing code in comment? Please use ide.geeksforgeeks.org, generate link and share the link here.