Conflict Serialisable Schedules
This is how we calculate quickly how much concurrency we can allow while satisfying isolation and consistency.
Conflict-Serialisability
This is a stronger from of serialisability that is used by most commercial DBMS. It is base on the notion of conflict:
A conflict in a schedule is a pair of operations, from different transaction, that cannot be swapped without changing the behaviour of at least one of the transactions.
Look for a write, then read, from different transactions. Read, then write, is okay.
Conflicts
A conflict in a schedule is a pair of operations:
- From different transactions.
- That access the same item.
- At least one of them is a write operation.
Conflict-Equivalency
Two schedules
Example
You want to order the transactions to make it serial:
A schedule is conflict-serialisable if it is conflict-equivalent to a serial schedule.
Hierarchy of Schedules
All of the types of schedules shown so far are represented below:
Inclusions in the diagram are strict.