Axioms for memory access in asynchronous hardware systems
ACM Transactions on Programming Languages and Systems (TOPLAS) - The MIT Press scientific computation series
An improved algorithm for transitive closure on acyclic digraphs
Theoretical Computer Science - Thirteenth International Colloquim on Automata, Languages and Programming, Renne
Towards robust distributed systems (abstract)
Proceedings of the nineteenth annual ACM symposium on Principles of distributed computing
Dynamo: amazon's highly available key-value store
Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles
Bigtable: a distributed storage system for structured data
OSDI '06 Proceedings of the 7th symposium on Operating systems design and implementation
Communications of the ACM - Rural engineering development
PNUTS: Yahoo!'s hosted data serving platform
Proceedings of the VLDB Endowment
Benchmarking cloud serving systems with YCSB
Proceedings of the 1st ACM symposium on Cloud computing
Consistability: describing usually consistent systems
HotDep'08 Proceedings of the Fourth conference on Hot topics in system dependability
On the availability of non-strict quorum systems
DISC'05 Proceedings of the 19th international conference on Distributed Computing
Analyzing consistency properties for fun and profit
Proceedings of the 30th annual ACM SIGACT-SIGOPS symposium on Principles of distributed computing
Eventual consistency: How soon is eventual? An evaluation of Amazon S3's consistency behavior
Proceedings of the 6th Workshop on Middleware for Service Oriented Computing
EVE: verifying correct execution of cloud-hostedweb applications
HotCloud'11 Proceedings of the 3rd USENIX conference on Hot topics in cloud computing
Replicated data consistency explained through baseball
Communications of the ACM
Verifying cloud services: present and future
ACM SIGOPS Operating Systems Review
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
ACM SIGOPS 24th Symposium on Operating Systems Principles
Consistency-based service level agreements for cloud storage
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
Eventually consistent: not what you were expecting?
Communications of the ACM
Eventually Consistent: Not What You Were Expecting?
Queue - Performance
Hi-index | 0.03 |
Many key-value stores have recently been proposed as platforms for always-on, globally-distributed, Internet-scale applications. To meet their needs, these stores often sacrifice consistency for availability. Yet, few tools exist that can verify the consistency actually provided by a key-value store, and quantify the violations if any. How can a user check if a storage system meets its promise of consistency? If a system only promises eventual consistency, how bad is it really? In this paper, we present efficient algorithms that help answer these questions. By analyzing the trace of interactions between the client machines and a key-value store, the algorithms can report whether the trace is safe, regular, or atomic, and if not, how many violations there are in the trace. We run these algorithms on traces of our eventually consistent key-value store called Pahoehoe and find few or no violations, thus showing that it often behaves like a strongly consistent system during our tests.