Client Voter Leader Election for Partition-Tolerant Clusters
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed computing systems with an even number of nodes face challenges in leader election and fault tolerance, particularly during network partitions, leading to potential cluster unavailability, as they cannot elect a leader when split equally, and existing solutions require additional nodes or external entities, increasing costs and complexity.
Innovation Solution
The system incorporates client devices as voting members to participate in leader elections, effectively creating an odd number of voting members, allowing for leader election even in evenly split clusters and improving fault tolerance without requiring external nodes, ensuring that the elected leader is available to a majority of clients.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If a distributed computing system uses an even number of server nodes, then the system reduces hardware costs and simplifies deployment, but the system cannot elect a leader during network partitions resulting in cluster unavailability
Solution Approach 1:
The patent introduces client devices as intermediary voting members that mediate the leader election process. When servers are evenly split during a network partition, client voters serve as the deciding factor to break the tie and enable leader election, thus resolving the contradiction between using an even number of servers and maintaining reliability during partitions.
2Reliability
If additional server nodes are added to enable leader election during network partitions, then the system achieves fault tolerance, but the system increases hardware costs and device complexity
Solution Approach 1:
The patent makes client devices serve multiple functions: they act as both service consumers and voting members in the leader election process. This multi-functionality allows the system to achieve fault tolerance without adding dedicated voting nodes, thereby avoiding increased hardware costs and device complexity while maintaining reliability.
3Stability of the object's composition
If the system requires a majority quorum of servers for leader election, then the system ensures consensus safety, but the system prevents leader election when servers are evenly split during network partition
Solution Approach 1:
The patent extends the voting dimension from only servers to include client devices. When servers are evenly split (1D problem), adding the client voting dimension creates a new decision space where the majority can be determined, thus maintaining consensus safety while improving leader election success rate during partitions.
Data Source
AI summary
Certain example embodiments relate to a distributed computing system including servers organized in a cluster and clients. One server is elected leader and is responsible for maintaining consensus information among the other servers. Each server is configured to determine whether a new leader election is to take place. If so, the respective server requests votes for a new leader from the other server(s) and determines whether it has won by a clear majority. Depending on the implementation, votes from eligible client devices are counted, either in a main election together with server votes, or in a tie-break election (if needed) after server votes. Once a server has won, the other servers are informed accordingly. It therefore is possible to maintain a highly-available, consistent, partition-tolerant cluster in the distributed computing systems, using client voters.


