Nerd For Tech

NFT is an Educational Media House. Our mission is to bring the invaluable knowledge and experiences…

Follow publication

Member-only story

Quorum — Distributed Design Pattern

Quorum helps you achieve the right balance between high throughput, availability and consistency of your distributed data store/database.
Quorum

One of the constants with any Distributed System is Failure. We build systems such that they are resilient to failures. Let’s continue from our previous discussion on WAL, where to ensure durability, our operations were stored on the WAL, from where they could be recovered. Let’s assume we want to replicate our WAL to different nodes in the cluster for High Availability and Fault Tolerance. The next question we need to ask is -

How many nodes in our cluster need to acknowledge that they got the replicated copy from the original server before we can say that the update to the WAL was successful?

Quorum is the answer to the above question. Quorum is the minimum number of servers that must acknowledge a distributed operation to be successful before it's marked a success.

But why do we need quorum? What if we chose not to use Quorum?

Scenario 1: Replicate Changes To All Nodes In The Cluster

Instead of replicating the changes to a quorum of nodes, we can replicate the changes to all the nodes in the cluster. Then the origin server waits for acknowledgement from all the servers. This could lead to slow acknowledgement from the origin server(performance impact) & also could…

Create an account to read the full story.

The author made this story available to Medium members only.
If you’re new to Medium, create a new account to read this story on us.

Or, continue in mobile web

Already have an account? Sign in

Nerd For Tech
Nerd For Tech

Published in Nerd For Tech

NFT is an Educational Media House. Our mission is to bring the invaluable knowledge and experiences of experts from all over the world to the novice. To know more about us, visit https://www.nerdfortech.org/.

Pratik Pandey - https://pratikpandey.substack.com
Pratik Pandey - https://pratikpandey.substack.com

Written by Pratik Pandey - https://pratikpandey.substack.com

Senior Engineer with experience in designing and architecting large scale distributed systems.

Responses (1)

Write a response