---
title: "Data-centric consistency models"
subject: "Distributed System"
chapter: 7
key: "semester_7/distributed_system:data-centric-consistency"
source: https://www.bctengineer.com/q/semester_7/distributed_system/data-centric-consistency
site: BCT Engineering
---

# Data-centric consistency models

Distributed System · Chapter 7: Replication

- Asked in: 2076 Asoj
- Video: [2.20 Data centric consistency model](https://www.youtube.com/watch?v=HG1skAqbsp8) — OU Education
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_7/distributed_system/data-centric-consistency
- Whole chapter: https://www.bctengineer.com/md/semester_7/distributed_system/chapter-7

## Question

Specify Data Centric consistency models and explain any one of them in detail.

## Short answer

Data-centric consistency models include strict, linearizability, sequential, causal, FIFO, and weak/release/entry consistency. Sequential consistency ensures that the result of execution is as if all operations were executed in some sequential order, and operations of each process appear in program order; all processes see the same interleaving. For example, if two processes write different values, all other processes must see those writes in the same order. Implementation uses a sequencer or totally ordered multicast of writes.

## Answer

A **consistency model** is a contract between the data store and its processes: if processes follow certain rules, the store guarantees results of reads and writes in a predictable way. **Data-centric** models describe the consistency of the store as seen by all processes (system-wide), as opposed to client-centric models.

#### Data-centric consistency models
1. **Strict consistency**: any read returns the result of the most recent write in absolute global time. Impossible in a real distributed system.
2. **Linearizability**: operations appear in a single sequential order consistent with real-time (timestamps) order.
3. **Sequential consistency**: the result is as if all operations were executed in some sequential order, and operations of each process appear in program order. All processes see the same order.
4. **Causal consistency**: writes that are causally related are seen in the same order by all processes; concurrent writes may be seen in different orders.
5. **FIFO (PRAM) consistency**: writes from one process are seen in the order issued; writes from different processes may be seen in different orders.
6. **Weak, release and entry consistency** (using synchronization variables): consistency is enforced only at synchronization points (e.g. acquire/release of a lock).

#### Sequential consistency in detail
Let processes operate on a data item x, which initially has no value (NIL).

```text
P1: W(x)a
P2:       R(x)NIL  R(x)a      <- sequentially consistent
```
```text
P1: W(x)a
P2: W(x)b
P3:   R(x)b  R(x)a
P4:   R(x)a  R(x)b            <- not sequentially consistent
```
In the first case, there is a single valid order in which reads see the writes. In the second, P3 and P4 see the two writes in different orders, so no single order exists. In a sequentially consistent store, all processes must see the writes in the same order (here either both see b then a, or both a then b).

Implementation: use a **sequencer** or **totally ordered multicast** of writes (e.g. primary-based or replicated-write protocols). Its drawback is that the cost of ordering limits performance, which is why weaker models are used.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. What do data-centric consistency models describe?
   A. Consistency seen by a single client moving between replicas
   B. Consistency of the store as seen by all processes system-wide
   C. Only the physical layout of data
   D. Only the network protocol used
   Answer: B. Data-centric models give system-wide guarantees, unlike client-centric models that concern an individual client. (Key point: Meaning of data-centric)

2. Which model requires only that causally related writes be seen in the same order by all processes?
   A. Strict consistency
   B. Sequential consistency
   C. Causal consistency
   D. Linearizability
   Answer: C. Causal consistency orders only causally related writes; concurrent writes may be seen in different orders. (Key point: Causal vs FIFO)

3. What does sequential consistency guarantee?
   A. Reads return the most recent write in absolute global time
   B. The result is as if all operations ran in some single sequential order, with each process's operations in program order, and all processes see the same order
   C. Each process may see writes of others in any order
   D. Consistency only at synchronization points
   Answer: B. All processes must see one common interleaving that respects each process's program order; it does not require real-time ordering. (Key point: Sequential consistency definition)

4. P1 writes x=a, P2 writes x=b. P3 reads b then a, while P4 reads a then b. Why is this not sequentially consistent?
   A. Because reads are not allowed
   B. Because P3 and P4 see the two writes in different orders so no single order exists
   C. Because P1 and P2 write the same variable
   D. Because P3 reads before any write
   Answer: B. All processes must observe the writes in the same order; here P3 sees b then a and P4 sees a then b. (Key point: Violation example)

5. Which mechanism can implement sequential consistency?
   A. Totally ordered multicast of writes or a sequencer
   B. Random delivery of writes
   C. Writing only to the nearest replica
   D. Ignoring write order
   Answer: A. A sequencer or total-order multicast makes every replica apply writes in the same order, though ordering cost limits performance. (Key point: Implementation of sequential consistency)

## Related in other subjects

- [Different data warehouse models](https://www.bctengineer.com/question.md?key=semester_7%2Fdata_mining%3Adw-models) — Data Mining, chapter 1
- [Double mass curve method for consistency](https://www.bctengineer.com/question.md?key=semester_5%2Fengineering_hydrology%3Admc-method-explain) — Engineering Hydrology, chapter 2, asked 5×
- [Models of management](https://www.bctengineer.com/question.md?key=semester_7%2Forganization_and_management%3Amanagement-models) — Organization and Management, chapter 3
- [Eventual and tunable consistency in Cassandra](https://www.bctengineer.com/question.md?key=semester_8%2Fbig_data_technologies%3Acassandra-eventual-tunable-consistency) — Big Data Technologies, chapter 4
