3

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?

Majid Azimi
  • 205
  • 1
  • 7

1 Answers1

2

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.

hengxin
  • 9,541
  • 3
  • 36
  • 73