Early Conflict Checking in Two Phase Commit Protocol for Replicated State Machines

2021 ◽  
Vol 12 (4) ◽  
pp. 0-0

Representing an algorithmic workflow as a state machine is a frequently used technique in distributed systems. Replicating a state machine in a fault tolerant way is one of the main application areas under this context. When implementing a replicated state machine, a crucial problem is to maintain consistency among replicas that might handle various different requests arriving at each different replica. This problem requires maintaining a single consistent ordering of the distributed requests handled separately by replicas. Basic consensus protocols such as two phase commit (2PC), can be used to maintain consistency between replicas whenever a request is to be processed. In this study we modify 2PC protocol to take advantage of basic properties of a state machine and detect possible write conflicts earlier. Our experiments on distributed cloud environments show that our modified 2PC protocol increases the throughput and decrease wasted write operations by a significant amount.

2021 ◽  
Vol 14 (11) ◽  
pp. 2203-2215 ◽  
Author(s):  
Michael Whittaker ◽  
Ailidani Ailijiang ◽  
Aleksey Charapko ◽  
Murat Demirbas ◽  
Neil Giridharan ◽  
...  

State machine replication protocols, like MultiPaxos and Raft, are a critical component of many distributed systems and databases. However, these protocols offer relatively low throughput due to several bottlenecked components. Numerous existing protocols fix different bottlenecks in isolation but fall short of a complete solution. When you fix one bottleneck, another arises. In this paper, we introduce compartmentalization, the first comprehensive technique to eliminate state machine replication bottlenecks. Compartmentalization involves decoupling individual bottlenecks into distinct components and scaling these components independently. Compartmentalization has two key strengths. First, compartmentalization leads to strong performance. In this paper, we demonstrate how to compartmentalize MultiPaxos to increase its throughput by 6× on a write-only workload and 16× on a mixed read-write workload. Unlike other approaches, we achieve this performance without the need for specialized hardware. Second, compartmentalization is a technique, not a protocol. Industry practitioners can apply compartmentalization to their protocols incrementally without having to adopt a completely new protocol.


1984 ◽  
Vol IV (3) ◽  
pp. 53-64 ◽  
Author(s):  
John C. Knight ◽  
John I. A. Urquhart

1987 ◽  
Vol VII (6) ◽  
pp. 61-63
Author(s):  
John C. Knight

Sign in / Sign up

Export Citation Format

Share Document