skip to main content
10.1145/2911151.2911160acmotherconferencesArticle/Chapter ViewAbstractPublication PageseurosysConference Proceedingsconference-collections
short-paper

The CISE tool: proving weakly-consistent applications correct

Published:18 April 2016Publication History

ABSTRACT

Designers of a replicated database face a vexing choice between strong consistency, which ensures certain application invariants but is slow and fragile, and asynchronous replication, which is highly available and responsive, but exposes the programmer to unfamiliar behaviours. To bypass this conundrum, recent research has studied hybrid consistency models, in which updates are asynchronous by default, but synchronisation is available upon request. To help programmers exploit hybrid consistency, we propose the first static analysis tool for proving integrity invariants of applications using databases with hybrid consistency models. This allows a programmer to find minimal consistency guarantees sufficient for application correctness.

References

  1. D. Abadi. Consistency tradeoffs in modern distributed database system design: CAP is only part of the story. IEEE Computer, 45(2), 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Amazon. Supported operations in DynamoDB. http://docs.aws.amazon.com/amazondynamodb/latest/\developerguide/APISummary.html, 2015.Google ScholarGoogle Scholar
  3. V. Balegas, N. Preguiça, R. Rodrigues, S. Duarte, C. Ferreira, M. Najafzadeh, and M. Shapiro. Putting consistency back into eventual consistency. In Euro. Conf. on Comp. Sys. (EuroSys), pages 6:1--6:16, Bordeaux, France, Apr. 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Basho Inc. Using strong consistency in Riak. http://docs.basho.com/riak/latest/dev/advanced/strong-consistency/, 2015.Google ScholarGoogle Scholar
  5. P. Bernstein, V. Radzilacos, and V. Hadzilacos. Concurrency Control and Recovery in Database Systems. Addison Wesley Publishing Company, 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. J. C. Corbett, J. Dean, M. Epstein, A. Fikes, C. Frost, J. Furman, S. Ghemawat, A. Gubarev, C. Heiser, P. Hochschild, W. Hsieh, S. Kanthak, E. Kogan, H. Li, A. Lloyd, S. Melnik, D. Mwaura, D. Nagle, S. Quinlan, R. Rao, L. Rolig, Y. Saito, M. Szymaniak, C. Taylor, R. Wang, and D. Woodford. Spanner: Google's globally-distributed database. In Symp. on Op. Sys. Design and Implementation (OSDI), pages 251--264, Hollywood, CA, USA, Oct. 2012. Usenix. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. S. Gilbert and N. Lynch. Brewer's conjecture and the feasibility of consistent, available, partition-tolerant web services. SIGACT News, 33(2):51--59, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. A. Gotsman, H. Yang, C. Ferreira, M. Najafzadeh, and M. Shapiro. 'Cause I'm strong enough: Reasoning about consistency choices in distributed systems. In Symp. on Principles of Prog. Lang. (POPL), pages 371--384, St. Petersburg, FL, USA, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. C. Li, D. Porto, A. Clement, J. Gehrke, N. Preguiça, and R. Rodrigues. Making geo-replicated systems fast as possible, consistent when necessary. In Symp. on Op. Sys. Design and Implementation (OSDI), pages 265--278, Hollywood, CA, USA, Oct. 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Microsoft. Consistency levels in DocumentDB. http://azure.microsoft.com/en-us/documentation/articles/documentdb-consistency-levels/, 2015.Google ScholarGoogle Scholar
  11. M. Najafzadeh and M. Shapiro. Demo of the CISE tool, Nov. 2015. Video of demo, with explanations.Google ScholarGoogle Scholar
  12. Y. Sovran, R. Power, M. K. Aguilera, and J. Li. Transactional storage for geo-replicated systems. In Symp. on Op. Sys. Principles (SOSP), pages 385--400, Cascais, Portugal, Oct. 2011. Assoc. for Computing Machinery. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. D. B. Terry, V. Prabhakaran, R. Kotla, M. Balakrishnan, M. K. Aguilera, and H. Abu-Libdeh. Consistency-based service level agreements for cloud storage. In SOSP, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. W. Vogels. Eventually consistent. CACM, 52(1), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library

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 Other conferences
    PaPoC '16: Proceedings of the 2nd Workshop on the Principles and Practice of Consistency for Distributed Data
    April 2016
    54 pages
    ISBN:9781450342964
    DOI:10.1145/2911151

    Copyright © 2016 ACM

    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 18 April 2016

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • short-paper

    Acceptance Rates

    Overall Acceptance Rate34of47submissions,72%

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader