Dagstuhl seminar review: consistency in distributed systems

In distributed systems, there exists a fundamental trade-off between data consistency, availability, and the ability to tolerate failures. This trade-off has significant implications on the design of the entire distributed computing infrastructure such as storage systems, compilers and runtimes, application development frameworks and programming languages. Unfortunately, it also has significant, and poorly understood, implications for the designers and developers of end applications. As distributed computing become mainstream, we need to enable programmers who are not experts to build and understand distributed applications.

[1]  Richard J. Lipton,et al.  Reduction: a method of proving properties of parallel programs , 1975, CACM.

[2]  Nancy A. Lynch,et al.  GeoQuorums: implementing atomic memory in mobile ad hoc networks , 2003, Distributed Computing.

[3]  Maurice Herlihy,et al.  Linearizability: a correctness condition for concurrent objects , 1990, TOPL.

[4]  E. Brewer,et al.  CAP twelve years later: How the "rules" have changed , 2012, Computer.

[5]  Nancy A. Lynch,et al.  Rambo: a robust, reconfigurable atomic memory service for dynamic networks , 2010, Distributed Computing.

[6]  Daniel J. Abadi,et al.  Cap Is for Failures Consistency Tradeoffs in Modern Distributed Database System Design , 2012 .

[7]  Hector Garcia-Molina,et al.  Consistency in a partitioned network: a survey , 1985, CSUR.

[8]  Liuba Shrira,et al.  Providing high availability using lazy replication , 1992, TOCS.

[9]  Marcos K. Aguilera,et al.  Transactional storage for geo-replicated systems , 2011, SOSP.

[10]  Chris Okasaki,et al.  Purely functional data structures , 1998 .

[11]  Maurice Herlihy,et al.  Transactional Memory: Architectural Support For Lock-free Data Structures , 1993, Proceedings of the 20th Annual International Symposium on Computer Architecture.

[12]  André Schiper,et al.  Replication: Theory and Practice , 2010, Replication.

[13]  Barbara Liskov,et al.  Weak Consistency: A Generalized Theory and Optimistic Implementations for Distributed Transactions , 1999 .

[14]  Werner Vogels,et al.  Eventually consistent , 2008, CACM.

[15]  Nancy A. Lynch,et al.  RAMBO: A Reconfigurable Atomic Memory Service for Dynamic Networks , 2002, DISC.