Distributed Database - Eventual consistency (Weak)

Data System Architecture


Eventually consistency means all updates can be expected to propagate to all replicas with a certain period of time. The period should fall in the range of milliseconds with the system being consistent at its end.

Write conflicts will eventually propagate throughout the system

We believe that applications must be aware that they may read weakly consistent data and also that their write operations may conflict with those of other users and applications.

Moreover, applications must be revolved in the detection and resolution of conflicts since these naturally depend on the semantics of the application.

D. Terry et al., “Managing Update Conflicts in Bayou,a Weakly Connected Replicated Storage System”, SOSP 1995

What the application sees in the meantime is sensitive to replication mechanics and difficult to predict.

The inverse is known as a strong consistency


A transaction with two updates on two different records where the system will only see both of those changes or neither of those changes is not supported in NoSQL systems.

NoSQL systems have eventually consisting guarantees at the record level. big table defines the notion of entity groups (a set of related records) for which transactions are strongly consistent.

Documentation / Reference

Discover More
Card Puncher Data Processing
Data Integration - Synchronization

duplicate of of ? Ensure that all instances of a repository (database, file system, ...) contain the same data. Its not a trivial task when the data is volatile. Replication is the process of copying...
Data System Architecture
Data Properties and Transactions

This section is : transactions are the mechanism that guarantee data ACID (atomicity, consistency, isolation, durability) properties during concurrent data changes (ie multiple user or program...
Data System Architecture
Data Property - ACID (atomicity, consistency, isolation, durability)

In computer science, ACID (atomicity, consistency, isolation, durability) is a set of properties that guarantee transactions are processed reliably. They defines a concurrency model. Traditional database...
Data System Architecture
Data Property - BASE (Basically Available)

BASE is a set of properties for systems that prefer in the CAP theorem: Availability (A) and Partition tolerance (P) over Consistency (C) A base system is therefore also known as a AP (Available...
Data System Architecture
Data Property - Data Consistency - (Strong|Atomic) consistency - Linearizability)

In its most basic form, consistency refers to data values in one data set being consistent with values in another data set at the same point in time. In an other form, consistency, also known as atomic...
Data System Architecture
Data Property - Immediate / Strong Consistency

Immediate (or strong) consistency is a consistency level that contrast with eventual consistency. With strong consistency, there may be deadlocks whereas it's less possible with eventual consistency ...
Data System Architecture
Database management system (DBMS)

A Database_management_systemDBMS is a set of software programs that controls the organization, storage, management, and retrieval of data. A database is a collection of permanently stored data used by...
Data System Architecture
Distributed - Database / Application

Distributed systems is the opposite of a single node (ie computer). Scale across the system bus before you scale across the network with distributed systems. It is all the same design principles. Think...
Event Centric Thinking
Stream - How to capture change of state - Change Data Capture (CDC)

This page is how to capture the changes of state in order to create a stream. The stream processing will then perform an incremental computation Capturing data changes is far from a trivial task, and...

Share this page:
Follow us:
Task Runner