Optimistic Execution in Key-Value Store
Duong Nguyen, Aleksey Charapko, Sandeep Kulkarni, Murat Demirbas

TL;DR
This paper introduces an optimistic execution approach for key-value stores that leverages monitoring and rollback to improve throughput under weaker consistency models like eventual or causal consistency.
Contribution
It proposes a detect-rollback method allowing correct execution of algorithms designed for sequential consistency on weaker consistency models.
Findings
20-40% throughput improvement with eventual consistency
Monitoring overhead is less than 8%
Violations detected in less than 1 second for 99.9% cases
Abstract
Limitations of CAP theorem imply that if availability is desired in the presence of network partitions, one must sacrifice sequential consistency, a consistency model that is more natural for system design. We focus on the problem of what a designer should do if she has an algorithm that works correctly with sequential consistency but is faced with an underlying key-value store that provides a weaker (e.g., eventual or causal) consistency. We propose a detect-rollback based approach: The designer identifies a correctness predicate, say P , and continue to run the protocol, as our system monitors P . If P is violated (because the underlying key-value store provides a weaker consistency), the system rolls back and resumes the computation at a state where P holds. We evaluate this approach in the Voldemort key-value store. Our experiments with deployment of Voldemort on Amazon AWS shows…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Cloud Computing and Resource Management · Software System Performance and Reliability
