Syntax error Explain the precedence graph for testing conflict serializability(DBMS)

Explain the precedence graph for testing conflict serializability(DBMS)



Conflict serializability orders any conflicting operations in the same way as some serial execution. A pair of operations is said to conflict if they operate on the same data item and one of them is a write operation.

That means,

  • Readi(x) readj(x) - non conflict read-read operation

  • Readi(x) writej(x) - conflict read-write operation.

  • Writei(x) readj(x) - conflict write-read operation.

  • Writei(x) writej(x) - conflict write-write operation.

Where, I and j denote two different transactions Ti and Tj.

Precedence graph

Now consider a precedence graph for testing conflict serializability. It is used to check conflict serializability.

Steps for precedence graph

  • For each transaction T, put a node or vertex in the graph.

  • For each conflicting pair, put an edge from Ti to Tj.

  • If there is a cycle in the graph then schedule is not conflict serializable else schedule is conflict serializable.

Let us consider some examples.

Example 1

Cycle is present so it is not conflict serializable.

Example 2

Cycle is not present, so it is conflict serializable.

Example 3

Cycle is not present, so it is conflict serializable.

Updated on: 2021-07-08T07:09:34+05:30

3K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements