Consistency

Data-centric Consistency Models

Interleaving: a serialised sequence of the operations by all clients.

Strict Consistency

It assumes all local clocks are synchronised and consistent.

All writes are visible to all clients instantaneously.

Sequential Consistency

All clients see the same interleaving of operations.

The interleaving follows the program order.

To identify inconsistency:

  1. Order is determined by program order, and find observations inconsistent with assumed program order.

  2. Try to fix the order by moving statements around and see wether all clients see the same the interleaving.

Causal Consistency

Writes that are potentially causally related must be seen by all clients (when reading the data) in the same order.

Concurrent writes (which don't have causal relationship) may be seen in different orders.

FIFO Consistency

Writes done by a single client are seen by all other clients (when reading the data) in the order in which they were issued.

References

  1. Wiki: Consistency model. Link

Last updated

Was this helpful?