concept

Causal Consistency

A model guaranteeing that operations which causally depend on one another are seen in the same order everywhere, while concurrent operations may be seen in any order.

consistencyorderingdistributed

The useful middle ground between linearizable and eventual. If Alice posts a comment and Bob replies to it, nobody sees Bob's reply before Alice's comment — because the reply causally depends on the post. Two unrelated posts, though, may appear in different orders to different observers, and nobody notices.

It is attractive because it rules out the anomalies users actually complain about — replies before posts, a deleted item reappearing after its deletion, a "you have 1 new message" badge for a message that is not there — without the coordination cost of linearizability. It is also, by a well-known result, the strongest consistency model achievable in a system that stays available during a partition.

Implementation is by tracking causality explicitly: version vectors, dependency metadata attached to writes, or logical clocks. The practical costs are the metadata size and the fact that most mainstream databases do not offer it directly — so it tends to be built at the application layer for specific flows rather than adopted wholesale.