DEV Community

Eventual vs Strong Consistency in Distributed Databases

saurabh.v on July 31, 2017

Explanation of this topic starts with an analogy, taking an example from real life to understand the concept better. I have the habit of writing s...
Collapse
 
ben profile image
Ben Halpern

Really well explained, Saurabh. These are the issues at the core of our drive to provide a low latency experience on dev.to for all our readers globally. The concept of eventual consistency is strongly at play in:

How our users interact with our CDN and how the CDN interacts with the origin server. I also want to distribute the origin server that could make reads from eventually consistent follower DBs.

We already make use of an eventually consistent distributed search via Algolia.

I find the verbiage in this domain hard to wrap my head around even if the topic is reasonably straightforward, so posts like this are super useful for people I think.

Collapse
 
saurabhgiv profile image
saurabh.v

Thanks for appreciating the article, Ben.

Collapse
 
kordeviant profile image
Puria Kordrostami

i think this is a bad explanation. in your example eventual consistency is actually inconsistent but it really is not. i think strong consistency is when your architecture does not provide you with consistency and you should take extreme measures to apply it. but in eventual consistency, your architecture works in a way that your data becomes eventually consistent without using complicated d-locks.