Skip to Main content Skip to Navigation
Conference papers

Replicated Data Types: Specification, Verification, Optimality

Abstract : Geographically distributed systems often rely on replicated eventu- ally consistent data stores to achieve availability and performance. To resolve conflicting updates at different replicas, researchers and practitioners have proposed specialized consistency protocols, called replicated data types, that implement objects such as reg- isters, counters, sets or lists. Reasoning about replicated data types has however not been on par with comparable work on abstract data types and concurrent data types, lacking specifications, correctness proofs, and optimality results. To fill in this gap, we propose a framework for specifying repli- cated data types using relations over events and verifying their im- plementations using replication-aware simulations. We apply it to 7 existing implementations of 4 data types with nontrivial conflict- resolution strategies and optimizations (last-writer-wins register, counter, multi-value register and observed-remove set). We also present a novel technique for obtaining lower bounds on the worst- case space overhead of data type implementations and use it to prove optimality of 4 implementations. Finally, we show how to specify consistency of replicated stores with multiple objects ax- iomatically, in analogy to prior work on weak memory models. Overall, our work provides foundational reasoning tools to support research on replicated eventually consistent stores
Document type :
Conference papers
Complete list of metadata

Cited literature [35 references]  Display  Hide  Download
Contributor : Marc Shapiro Connect in order to contact the contributor
Submitted on : Tuesday, January 21, 2014 - 6:10:29 PM
Last modification on : Friday, January 21, 2022 - 3:21:31 AM
Long-term archiving on: : Tuesday, April 22, 2014 - 10:02:53 AM


Files produced by the author(s)



Sebastian Burckhardt, Alexey Gotsman, Hongseok Yang, Marek Zawirski. Replicated Data Types: Specification, Verification, Optimality. POPL 2014: 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Jan 2014, San Diego, CA, United States. pp.271-284, ⟨10.1145/2535838.2535848⟩. ⟨hal-00934311⟩



Record views


Files downloads