My understanding is that conflict serializable implies serializable. I'm not sure how that makes them different. Does serializable mean conflict serializable?
My understanding is that conflict serializable implies serializable. I'm not sure how that makes them different. Does serializable mean conflict serializable?
In simple Words, Suppose there is a schedule(S) with two transaction T1,T2. Let Result1, Result2 be two variables, where Result1 is produced after running T1 and then T2, i.e T1->T2;(serially) Result2 is produced after running T2 and then T1, i.e T2->T1;(serially)
Now suppose we interleave the actions of the two transaction, let us call it schedule S, now if the net result produced after running S is equivalent to Result1 or Result2 then we call it serializable.
But, if we can swap the non-conflicting actions and produce a serial schedule that is equal to a schedule in which T1 is run first and then T2(T1->T2), or T2 is run first and then T1(T2->T1) then we call it conflict-serializable.
Now if a schedule is conflict-serializable then it is bound to be serializable as it can be changed to some serial order by swapping the non-conflicting actions.
Hence we can conclude, every conflict-serializable schedule is serializable but not all serializable schedule are conflict-serializable.
Straight Definition with the understanding of conflicting actions:
A schedule is conflict serializable if it is conflict equivalent to some serial schedule. Every conflict serializable schedule is serializable.
The above example is serializable but not conflict serializable. There is no such serial that has the same conflicting actions. Serializable because it still achieves concurrency to serial T1->T2->T3, but does not share conflicting actions. The writes of T1 and T2 are in different order in the example opposed to the serial.
Serializability has two types: Conflict and View. Conflict serializable determines if a schedule is equivalent to some serial schedule keeping the conflicting operations(R-W or W-R or W-W) in the same sequence as in the original schedule.