patternMinor
Is per-record timeline consistency is somehow equivalent to causal consistency?
Viewed 0 times
somehowtimelineperequivalentrecordcausalconsistency
Problem
What I understand about per-record timeline consistency is:
For a specific primary key all the insert/update/delete operations should
be read in the same order by all replicas.
Since all modifications to a specific primary key are causally related (a client reads it, then modifies or delete it), then per-record timeline consistency is somehow equivalent to causal consistency. If they are essentially equivalent, then why put another name on it? Am I missing something?
For a specific primary key all the insert/update/delete operations should
be read in the same order by all replicas.
Since all modifications to a specific primary key are causally related (a client reads it, then modifies or delete it), then per-record timeline consistency is somehow equivalent to causal consistency. If they are essentially equivalent, then why put another name on it? Am I missing something?
Solution
You may know that per-record timeline consistency is used in PNUTS: Yahoo!’s Hosted Data Serving Platform:
We provide per-record timeline consistency: all replicas of a given record apply all updates to the record in the same order.
Answer your questions:
Since all modifications to a specific primary key are causally related (a client reads it, then modifies or delete it), ...
They are actually totally (or sequentially) ordered, stronger than "causally related".
... then per-record timeline consistency is somehow equivalent to causal consistency.
Given the reason above, per-record timeline consistency is more like sequential consistency (wiki). In fact, per-record time consistency is also called per-key sequential consistency, which is stronger than per-key causal consistency. Because sequential consistency is not local, per-key sequential consistency is not equivalent to (i.e., weaker than) sequential consistency defined over multiple keys.
We provide per-record timeline consistency: all replicas of a given record apply all updates to the record in the same order.
Answer your questions:
Since all modifications to a specific primary key are causally related (a client reads it, then modifies or delete it), ...
They are actually totally (or sequentially) ordered, stronger than "causally related".
... then per-record timeline consistency is somehow equivalent to causal consistency.
Given the reason above, per-record timeline consistency is more like sequential consistency (wiki). In fact, per-record time consistency is also called per-key sequential consistency, which is stronger than per-key causal consistency. Because sequential consistency is not local, per-key sequential consistency is not equivalent to (i.e., weaker than) sequential consistency defined over multiple keys.
Context
StackExchange Computer Science Q#75394, answer score: 2
Revisions (0)
No revisions yet.