Eventual consistency: How soon is eventual? An evaluation of Amazon S3's consistency behavior

Over the last few years, Cloud storage systems and so-called NoSQL datastores have found widespread adoption. In contrast to traditional databases, these storage systems typically sacrifice consistency in favor of latency and availability as mandated by the CAP theorem, so that they only guarantee eventual consistency. Existing approaches to benchmark these storage systems typically omit the consistency dimension or did not investigate eventuality of consistency guarantees. In this work we present a novel approach to benchmark staleness in distributed datastores and use the approach to evaluate Amazon's Simple Storage Service (S3). We report on our unexpected findings.

[1]  Mahadev Satyanarayanan,et al.  Coda: A Highly Available File System for a Distributed Workstation Environment , 1990, IEEE Trans. Computers.

[2]  Marvin Theimer,et al.  Managing update conflicts in Bayou, a weakly connected replicated storage system , 1995, SOSP.

[3]  Eric A. Brewer,et al.  Harvest, yield, and scalable tolerant systems , 1999, Proceedings of the Seventh Workshop on Hot Topics in Operating Systems.

[4]  Ben Y. Zhao,et al.  OceanStore: an architecture for global-scale persistent storage , 2000, SIGP.

[5]  Andrew S. Tanenbaum,et al.  Distributed systems: Principles and Paradigms , 2001 .

[6]  Amin Vahdat,et al.  Design and evaluation of a conit-based continuous consistency model for replicated services , 2002, TOCS.

[7]  GhemawatSanjay,et al.  The Google file system , 2003 .

[8]  Roberto Baldoni,et al.  An Adaptive Coupling-Based Algorithm for Internal Clock Synchronization of Large Scale Dynamic Systems , 2007, OTM Conferences.

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

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

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

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

[13]  Gustavo Alonso,et al.  Consistency Rationing in the Cloud: Pay only when it matters , 2009, Proc. VLDB Endow..

[14]  Markus Klems,et al.  Consistency Benchmarking: Evaluating the Consistency Behavior of Middleware Services in the Cloud , 2010, ICSOC.

[15]  Tim Kraska,et al.  An evaluation of alternative architectures for transaction processing in the cloud , 2010, SIGMOD Conference.

[16]  Prashant Malik,et al.  Cassandra: a decentralized structured storage system , 2010, OPSR.

[17]  Adam Silberstein,et al.  Benchmarking cloud serving systems with YCSB , 2010, SoCC '10.

[18]  Jacky W. Keung,et al.  Evaluating Cloud Platform Architecture with the CARE Framework , 2010, 2010 Asia Pacific Software Engineering Conference.

[19]  Xiaozhou Li,et al.  What Consistency Does Your Key-Value Store Actually Provide? , 2010, HotDep.

[20]  Kevin Lee,et al.  Data Consistency Properties and the Trade-offs in Commercial Cloud Storage: the Consumers' Perspective , 2011, CIDR.

[21]  David Bermbach,et al.  MetaStorage: A Federated Cloud Storage System to Manage Consistency-Latency Tradeoffs , 2011, 2011 IEEE 4th International Conference on Cloud Computing.

[22]  Sherif Sakr,et al.  CloudDB AutoAdmin: Towards a Truly Elastic Cloud-Based Data Store , 2011, 2011 IEEE International Conference on Web Services.

[23]  Marten Schönherr,et al.  (MC2)2: criteria, requirements and a software prototype for Cloud infrastructure decisions , 2013, Softw. Pract. Exp..