Linearizability: a correctness condition for concurrent objects
ACM Transactions on Programming Languages and Systems (TOPLAS)
Sharing memory robustly in message-passing systems
Journal of the ACM (JACM)
Weighted voting for replicated data
SOSP '79 Proceedings of the seventh ACM symposium on Operating systems principles
Distributed Computing
Active disk Paxos with infinitely many processes
Distributed Computing - Special issue: PODC 02
Cassandra: a decentralized structured storage system
ACM SIGOPS Operating Systems Review
Introduction to Reliable and Secure Distributed Programming
Introduction to Reliable and Secure Distributed Programming
Hi-index | 0.00 |
A key-value store (KVS) offers functions for storing and retrieving values associated with unique keys. KVSs have become widely used as shared storage solutions for Internet-scale distributed applications. We present a fault-tolerant wait-free efficient algorithm that emulates a multi-reader multi-writer register from a set of KVS replicas in an asynchronous environment. Our implementation serves an unbounded number of clients that use the storage. It tolerates crashes of a minority of the KVSs and crashes of any number of clients. We provide two variants of our algorithm: one implementing an atomic register and one implementing a regular register; the latter does not require read operations to store data at the underlying KVSs. We note that applying state-of-the-art reliable storage solutions to this scenario is either impossible or prohibitively inefficient.