F1.5 Consistency Flashcards
Why do we need consistency?
To keep replicas consistent, minimize conflicting operations
What this definition about? :
The result of any execution is the same as if the operations of all processes were executed in some sequential order rand the operations of each individual process appear in this sequence in the order specified by its program
Sequential consistency
RABA SEQ
What’s this definition about?:
Writes that are potentially causally related must be seen by all processes in the same order
Casual consistency
RAAB CAS
What’s a lock? And how is it related to Entry consistency?
A synchronization mechanism used to control access to a shared resource.
Entry consistency implies that we need to lock and unlock data
(L(x) , U(x))
What’s a client centric consistency model for?
For example when a mobile user accesses different replicas of distant database
What is this definition?
A write operation by a process on a data item X is completed before any successive write operation on X by same process
Monotonic Writes ( ; inte |)
W(X1)
W(X1;X2) W(X2;X3)
What’s this definition?
If a process reads the vale of a data item X, any read on X by same process afterwards will return same or more recent value
Monotonic reads ( ; inte |)
W(X) R(X)
W(X1;X2)
What’s this definition?
The effect of a write operation by a process on data item X will always be seen by a successive read operation on X by the same process
Read-your writes
W(X1)
W(X1;X2) R(X2)
What’s this definition?
A write operation by a process on a data item X following a previous read operation on X by the same process is guaranteed to take place on the same or a more recent value of X that was read
Writes-follow-reads
W(X1) R(X)
W(X1;X2) W(X2;X3)