Designing a commutative replicated data type

Abstract : Commuting operations greatly simplify consistency in distributed systems. This paper focuses on designing for commutativity, a topic neglected previously. We show that the replicas of any data type for which concurrent operations commute converges to a correct value, under some simple and standard assumptions. We also show that such a data type supports transactions with very low cost. We identify a number of approaches and techniques to ensure commutativity. We re-use some existing ideas (non-destructive updates coupled with invariant identification), but propose a much more efficient implementation. Furthermore, we propose a new technique, background consensus. We illustrate these ideas with a shared edit buffer data type.
Complete list of metadatas
Contributor : Rapport de Recherche Inria <>
Submitted on : Tuesday, October 9, 2007 - 8:23:10 AM
Last modification on : Friday, August 31, 2018 - 9:25:54 AM
Long-term archiving on : Monday, September 24, 2012 - 1:15:49 PM


Files produced by the author(s)


  • HAL Id : inria-00177693, version 1



Marc Shapiro, Nuno Preguiça. Designing a commutative replicated data type. [Research Report] RR-6320, 2007. ⟨inria-00177693v1⟩



Record views


Files downloads