Eventual Consistent Databases: State of the Art

One of the challenges of cloud programming is to achieve the right balance between the availability and consistency in a distributed database. Cloud computing environments, particularly cloud databases, are rapidly increasing in importance, acceptance and usage in major applications, which need the partition-tolerance and availability for scalability purposes, but sacrifice the consistency side (CAP theorem). In these environments, the data accessed by users is stored in a highly available storage system, thus the use of paradigms such as eventual consistency became more widespread. In this paper, we review the state-of-the-art database systems using eventual consistency from both industry and research. Based on this review, we discuss the advantages and disadvantages of eventual consistency, and identify the future research challenges on the databases using eventual consistency.

[1]  Xiaozhou Li,et al.  Efficient eventual consistency in Pahoehoe, an erasure-coded key-blob archive , 2010, 2010 IEEE/IFIP International Conference on Dependable Systems & Networks (DSN).

[2]  Sebastian Burckhardt,et al.  Eventually Consistent Transactions , 2012, ESOP.

[3]  Ethan Cerami,et al.  Web Services Essentials , 2002 .

[4]  Alma Riska,et al.  Fast Eventual Consistency with Performance Guarantees for Distributed Storage , 2012, 2012 32nd International Conference on Distributed Computing Systems Workshops.

[5]  Daniel Eriksson How to implement Bounded-Delay replication in DeeDS , 2002 .

[6]  Werner Vogels,et al.  Building reliable distributed systems at a worldwide scale demands trade-offs between consistency and availability. , 2022 .

[7]  Dorin Carstoiu,et al.  Zatara, the Plug-in-able Eventually Consistent Distributed Database , 2010, Adv. Inf. Sci. Serv. Sci..

[8]  Nicolas Le Scouarnec,et al.  Bitbox: Eventually Consistent File Sharing , 2013, NETYS.

[9]  David Bermbach,et al.  A Middleware Guaranteeing Client-Centric Consistency on Top of Eventually Consistent Datastores , 2013, 2013 IEEE International Conference on Cloud Engineering (IC2E).

[10]  Sebastian Burckhardt,et al.  Understanding Eventual Consistency , 2013 .

[11]  Sten F. Andler,et al.  Continuous consistency management in distributed real-time databases with multiple writers of replicated data , 2005, 19th IEEE International Parallel and Distributed Processing Symposium.

[12]  Marc Shapiro A Principled Approach to Eventual Consistency , 2011, 2011 IEEE 20th International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises.

[13]  Daniel Bartholomew,et al.  SQL vs. NoSQL , 2010 .

[14]  Philip A. Bernstein,et al.  Concurrency Control in Distributed Database Systems , 1986, CSUR.

[15]  Gil Neiger,et al.  Causal memory: definitions, implementation, and programming , 1995, Distributed Computing.

[16]  Werner Vogels,et al.  Dynamo: amazon's highly available key-value store , 2007, SOSP.

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

[18]  Sebastian Burckhardt,et al.  Cloud Types for Eventual Consistency , 2012, ECOOP.

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

[20]  Michael J. Freedman,et al.  Don't settle for eventual: scalable causal consistency for wide-area storage with COPS , 2011, SOSP.

[21]  Jan Van den Bussche,et al.  Deciding eventual consistency for a simple class of relational transducer networks , 2012, ICDT '12.

[22]  Hans-Arno Jacobsen,et al.  PNUTS: Yahoo!'s hosted data serving platform , 2008, Proc. VLDB Endow..

[23]  Irving L. Traiger,et al.  Transactions and consistency in distributed database systems , 1982, TODS.

[24]  Irving L. Traiger,et al.  Granularity of Locks and Degrees of Consistency in a Shared Data Base , 1998, IFIP Working Conference on Modelling in Data Base Management Systems.

[25]  Marvin Theimer,et al.  Session guarantees for weakly consistent replicated data , 1994, Proceedings of 3rd International Conference on Parallel and Distributed Information Systems.

[26]  Robert H. Thomas,et al.  A Majority consensus approach to concurrency control for multiple copy databases , 1979, ACM Trans. Database Syst..

[27]  Wojciech M. Golab,et al.  Toward a Principled Framework for Benchmarking Consistency , 2012, HotDep.

[28]  Ali Ghodsi,et al.  Eventual consistency today: limitations, extensions, and beyond , 2013, CACM.

[29]  Leslie Lamport,et al.  How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs , 2016, IEEE Transactions on Computers.

[30]  Swaminathan Sivasubramanian,et al.  Amazon dynamoDB: a seamlessly scalable non-relational database service , 2012, SIGMOD Conference.

[31]  Nancy A. Lynch,et al.  Brewer's conjecture and the feasibility of consistent, available, partition-tolerant web services , 2002, SIGA.

[32]  Tim Hawkins,et al.  The Definitive Guide to MongoDB , 2015, Apress.

[33]  Gerald W. Neufeld,et al.  TDBM: A DBM Library with Atomic Transactions , 1992, USENIX Summer.

[34]  Luis Rodero-Merino,et al.  A break in the clouds: towards a cloud definition , 2008, CCRV.

[35]  Philip A. Bernstein,et al.  Rethinking eventual consistency , 2013, SIGMOD '13.