Exploiting Commutativity For Practical Fast Replication

10/26/2017
by   Seo Jin Park, et al.
0

Traditional approaches to replication require client requests to be ordered before making them durable by copying them to replicas. As a result, clients must wait for two round-trip times (RTTs) before updates complete. In this paper, we show that this entanglement of ordering and durability is unnecessary for strong consistency. Consistent Unordered Replication Protocol (CURP) allows clients to replicate requests that have not yet been ordered, as long as they are commutative. This strategy allows most operations to complete in 1 RTT (the same as an unreplicated system). We implemented CURP in the Redis and RAMCloud storage systems. In RAMCloud, CURP improved write latency by  2x (13.8 us -> 7.3 us) and write throughput by 4x. Compared to unreplicated RAMCloud, CURP's latency overhead for 3-way replication is just 0.4 us (6.9 us vs 7.3 us). CURP transformed a non-durable Redis cache into a consistent and durable storage system with only a small performance overhead.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/27/2020

Hermes: a Fast, Fault-Tolerant and Linearizable Replication Protocol

Today's datacenter applications are underpinned by datastores that are r...
research
07/23/2021

Making Reads in BFT State Machine Replication Fast, Linearizable, and Live

Practical Byzantine Fault Tolerance (PBFT) is a seminal state machine re...
research
07/01/2019

Creek: a General Mixed-Consistency Transactional Replication Scheme

In this paper we introduce Creek, a low-latency, eventually consistent r...
research
03/26/2020

State-Machine Replication for Planet-Scale Systems (Extended Version)

Online applications now routinely replicate their data at multiple sites...
research
03/15/2018

Global Stabilization for Causally Consistent Partial Replication

Causally consistent distributed storage systems have received significan...
research
04/18/2019

Harmonia: Near-Linear Scalability for Replicated Storage with In-Network Conflict Detection

Distributed storage employs replication to mask failures and improve ava...
research
11/07/2017

Barrier Enabled IO Stack for Flash Storage

This work is dedicated to eliminating the overhead of guaranteeing the s...

Please sign up or login with your details

Forgot password? Click here to reset