Traditional leader-centric replication strategies revolve around the fact that there will be one Master (leader) node that will acknowledge and accept all the writes operations and then replicate the updates across the replicas (read or master). In this essay, we take a look into a different way of replication, called Leaderless Replication, that comes in handy in a multi-master setup that demands strong consistency.
I think leaderless replication with Quoram r+w > n doesn't guaranty strong consistency. There are few edge cases, like
1. If a write happens concurrently with a read, the write may be reflected on only some of the replicas. In this case, it’s undetermined whether the read returns the old or the new value.
2. If a write succeeded on some replicas but failed on others (for example because the disks on some nodes are full), and overall succeeded on fewer than w replicas, it is not rolled back on the replicas where it succeeded. This means that if a write was reported as failed, subsequent reads may or may not return the value from that write.
Hi Arpit, Thanks for sharing the article. One suggestion: Just like you mentioned the pros of using this setup, it would be better if you can also highlight the cons of this [one i suppose is slow writes and reads]. Since there is always a tradeoff, it will help us to know both sides.
I think leaderless replication with Quoram r+w > n doesn't guaranty strong consistency. There are few edge cases, like
1. If a write happens concurrently with a read, the write may be reflected on only some of the replicas. In this case, it’s undetermined whether the read returns the old or the new value.
2. If a write succeeded on some replicas but failed on others (for example because the disks on some nodes are full), and overall succeeded on fewer than w replicas, it is not rolled back on the replicas where it succeeded. This means that if a write was reported as failed, subsequent reads may or may not return the value from that write.
And many more!
Hi Arpit, Thanks for sharing the article. One suggestion: Just like you mentioned the pros of using this setup, it would be better if you can also highlight the cons of this [one i suppose is slow writes and reads]. Since there is always a tradeoff, it will help us to know both sides.
Yup. That was a miss from my end. I did not want essay to get very long but point taken; going forward you will see a deeper coverage.
Very nicely written in a simple and comprehendible manner! Thanks for sharing.