...

/

The Rationale behind Paxos Design Choices

The Rationale behind Paxos Design Choices

Understand the rationale behind Paxos protocol design choices and how they help achieve consensus on a single value.

We learned how the basic Paxos algorithm works with many examples. This lesson revisits many Paxos rules and explores the rationale behind those decisions.

The three roles

This design choice is very intuitive. Let’s continue with the example of deciding on a food place for Lunch. Some members need to propose some suggestions; otherwise, we would not have any options to consider. The members who give suggestions can be called proposers. Because we need to choose one place from the total list of suggestions, there should be some mechanism that can help us decide. One way to do that is through voting. Then, we need voters that can vote against the proposed suggestions. We’ll call these members of the group the acceptors.

We should also consider a situation where some of the members are not available or have no issue with whatever the final decision is. They just learn the final decision and are happy with that. Also, all the available members of the group need to learn the final chosen value. We call these members of the group the learners.

Here, we might think that the final chosen value would be the one that got the maximum number of votes. But would that work? Let's see in the following section.

Getting majority votes

We saw in the previous lesson how in the Paxos protocol, a value is chosen only if it gets majority votes. We might wonder why we need a majority (more than half of the total number of votes) when instead we can just choose the value with the highest number of votes. Let's state the difference between having the highest number of votes and having majority votes in the following way to understand why Paxos needs to get majority votes to choose a value.

  • The highest number of votes: Let’s consider that there are a total of 6 members of the group. Three members voted for proposal 1, two voted for proposal 2, and the remaining one voted for proposal 3. Here, the proposal that got the highest number of votes is proposal 1. None of
...
Access this course and 1400+ top-rated courses and projects.