skip to main content
10.1145/1993806.1993843acmconferencesArticle/Chapter ViewAbstractPublication PagespodcConference Proceedingsconference-collections
abstract

Robust data sharing with key-value stores

Published:06 June 2011Publication History

ABSTRACT

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.

References

  1. Amazon S3 availability event: July 20, 2008. http://status.aws.amazon.com/s3-20080720.html.Google ScholarGoogle Scholar
  2. Amazon Simple Storage Service. http://aws.amazon.com/s3/.Google ScholarGoogle Scholar
  3. Gmail back soon for everyone. http://gmailblog.blogspot.com/2011/02/gmail-back-soon-for-everyone.html.Google ScholarGoogle Scholar
  4. Project Voldemort: A distributed database. http://project-voldemort.com/.Google ScholarGoogle Scholar
  5. Windows Azure Storage. http://www.microsoft.com/windowsazure/storage/.Google ScholarGoogle Scholar
  6. I. Abraham, G. Chockler, I. Keidar, and D. Malkhi. Byzantine disk Paxos: Optimal resilience with Byzantine shared memory. Distributed Computing, 18(5):387--408, 2006.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. H. Attiya, A. Bar-Noy, and D. Dolev. Sharing memory robustly in message-passing systems. J. ACM, 42(1):124--142, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. C. Basescu, C. Cachin, I. Eyal, R. Haas, and M. Vukolić. Robust data sharing with key-value stores. Research Report RZ 3802, IBM Research, 2011.Google ScholarGoogle Scholar
  9. C. Cachin, R. Guerraoui, and L. Rodrigues. Introduction to Reliable and Secure Distributed Programming (Second Edition). Springer, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. G. Chockler and D. Malkhi. Active disk Paxos with infinitely many processes. Distributed Computing, 18:73--84, 2005. 10.1007/s00446-005-0123-x. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. R. Fan and N. A. Lynch. Efficient replication of large data objects. In Distributed Computing (DISC), pages 75--91, 2003.Google ScholarGoogle ScholarCross RefCross Ref
  12. E. Gafni and L. Lamport. Disk Paxos. Distributed Computing, 16(1):1--20, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. D. K. Gifford. Weighted voting for replicated data. In Symposium on Operating System Principles (SOSP), pages 150--162, 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. M. P. Herlihy and J. M. Wing. Linearizability: a correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst., 12:463--492, July 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. A. Lakshman and P. Malik. Cassandra: A decentralized structured storage system. SIGOPS Oper. Syst. Rev., 44:35--40, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. L. Lamport. On interprocess communication. Distributed Computing, 1(2):77--101, 1986.Google ScholarGoogle ScholarCross RefCross Ref
  17. C. Shao, E. Pierce, and J. L. Welch. Multi-writer consistency conditions for shared memory objects. In Distributed Computing (DISC), pages 106--120, 2003.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Robust data sharing with key-value stores

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      PODC '11: Proceedings of the 30th annual ACM SIGACT-SIGOPS symposium on Principles of distributed computing
      June 2011
      406 pages
      ISBN:9781450307192
      DOI:10.1145/1993806

      Copyright © 2011 Authors

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 6 June 2011

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • abstract

      Acceptance Rates

      Overall Acceptance Rate740of2,477submissions,30%

      Upcoming Conference

      PODC '24

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader