Consistency

Basic idea

Consistency models specify what values reads may observe given concurrent writes. They are characterised by two orthogonal properties: safety (nothing wrong ever happens) and liveness (something good eventually happens).

Key facts

Consistency in the context of distributed systems revolve around two things, safety and liveness.

Eventual consistency

Makes promises about liveness only.

Strong eventual consistency

Makes promises about liveness and safety

Liveness

The property that eventually something good will happen. For example saying that a system will return a result to every API call is a liveness property.

Safety

The property states that nothing bad will ever happen. For example never returning a wrong value or electing two leaders.

Siblings