Skip to main content

Self-tuning Eventually-Consistent Data Stores

  • Conference paper
  • First Online:
  • 1234 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10616))

Abstract

Replication protocols in distributed storage systems are fundamentally constrained by the finite propagation speed of information, which necessitates trade-offs among performance metrics even in the absence of failures. We focus on the consistency-latency trade-off, which dictates that a distributed storage system can either guarantee that clients always see the latest data, or it can guarantee that operation latencies are small (relative to the inter-data-center latencies) but not both. We propose a technique called spectral shifting for tuning this trade-off adaptively to meet an application-specific performance target in a dynamically changing environment. Experiments conducted in a real wold cloud computing environment demonstrate that our tuning framework provides superior convergence compared to a state-of-the-art solution.

W. Golab—Author supported in part by the Natural Sciences and Engineering Research Council (NSERC) of Canada, Discovery Grants Program, by a Google Faculty Research Award, and by the AWS Cloud Credits for Research program.

This is a preview of subscription content, log in via an institution.

References

  1. Abadi, D.: Consistency tradeoffs in modern distributed database system design: CAP is only part of the story. IEEE Comput. 45(2), 37–42 (2012)

    Article  Google Scholar 

  2. Anderson, E., Li, X., Shah, M.A., Tucek, J., Wylie, J.J.: What consistency does your key-value store actually provide? In: Proceedings of the 6th Workshop on Hot Topics in System Dependability (HotDep) (2010)

    Google Scholar 

  3. Ardekani, M.S., Terry, D.B.: A self-configurable geo-replicated cloud storage system. In: Symposium on Operating Systems Design and Implementation (OSDI), pp. 367–381 (2014)

    Google Scholar 

  4. Attiya, H., Bar-Noy, A., Dolev, D.: Sharing memory robustly in message-passing systems. J. ACM 42(1), 124–142 (1995)

    Article  Google Scholar 

  5. Attiya, H., Welch, J.L.: Sequential consistency versus linearizability. ACM Trans. Comput. Syst. 12(2), 91–122 (1994)

    Article  Google Scholar 

  6. Bailis, P., Venkataraman, S., Franklin, M.J., Hellerstein, J.M., Stoica, I.: Probabilistically bounded staleness for practical partial quorums. PVLDB 5(8), 776–787 (2012)

    Google Scholar 

  7. Bermbach, D., Tai, S.: Eventual consistency: how soon is eventual? An evaluation of Amazon S3’s consistency behavior. In: Proceedings of the 6th Workshop on Middleware for Service Oriented Computing (MW4SOC) (2011)

    Google Scholar 

  8. Brewer, E.A.: Towards robust distributed systems (Invited Talk). In: Proceedings of the 19th ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing (PODC) (2000)

    Google Scholar 

  9. Chang, F., Dean, J., Ghemawat, S., Hsieh, W.C., Wallach, D.A., Burrows, M., Chandra, T., Fikes, A., Gruber, R.E.: Bigtable: a distributed storage system for structured data. ACM Trans. Comput. Syst. 26(2), 4:1–4:26 (2008)

    Article  Google Scholar 

  10. Cooper, B.F., Ramakrishnan, R., Srivastava, U., Silberstein, A., Bohannon, P., Jacobsen, H.-A., Puz, N., Weaver, D., Yerneni, R.: PNUTS: Yahoo!’s hosted data serving platform. PVLDB 1(2), 1277–1288 (2008)

    Google Scholar 

  11. Corbett, J.C., et al.: Spanner: Google’s globally-distributed database. In: Proceedings of USENIX Conference on Operating Systems Design and Implementation (OSDI), pp. 251–264 (2012)

    Google Scholar 

  12. DeCandia, G., Hastorun, D., Jampani, M., Kakulapati, G., Lakshman, A., Pilchin, A., Sivasubramanian, S., Vosshall, P., Vogels, W.: Dynamo: Amazon’s highly available key-value store. In: Proceedings of the 21st ACM Symposium on Operating System Principles (SOSP), pp. 205–220, October 2007

    Google Scholar 

  13. Gibbons, P., Korach, E.: Testing shared memories. SIAM J. Comput. 26, 1208–1244 (1997)

    Article  MathSciNet  Google Scholar 

  14. Gifford, D.K.: Weighted voting for replicated data. In: Proceedings of the 7th ACM Symposium on Operating Systems Principles (SOSP), pp. 150–162 (1979)

    Google Scholar 

  15. Golab, W., Li, X., Shah, M.A.: Analyzing consistency properties for fun and profit. In: Proceedings of the 30th ACM Symposium on Principles of Distributed Computing (PODC), pp. 197–206, June 2011

    Google Scholar 

  16. Golab, W., Li, X., Shah, M.A.: Analyzing consistency properties for fun and profit. In: Proceedings of the 30th ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing (PODC), pp. 197–206 (2011)

    Google Scholar 

  17. Golab, W., Rahman, M.R., AuYoung, A., Keeton, K., Gupta, I.: Client-centric benchmarking of eventual consistency for cloud storage systems. In: Proceedings of the 34th International Conference on Distributed Computing Systems (ICDCS), pp. 493–502 (2014)

    Google Scholar 

  18. Golab, W., Wylie, J.J.: Providing a measure representing an instantaneous data consistency level. US Patent Application 20,140,032,504, filed 2012, published 2014

    Google Scholar 

  19. Herlihy, M., Wing, J.M.: Linearizability: a correctness condition for concurrent objects. ACM Trans. Programm. Lang. Syst. 12(3), 463–492 (1990)

    Article  Google Scholar 

  20. Krishnamurthy, S., Sanders, W.H., Cukier, M.: An adaptive quality of service aware middleware for replicated services. IEEE Trans. Parallel Distrib. Syst. 14, 1112–1125 (2003)

    Article  Google Scholar 

  21. Lakshman, A., Malik, P.: Cassandra: a decentralized structured storage system. SIGOPS Oper. Syst. Rev. 44(2), 35–40 (2010)

    Article  Google Scholar 

  22. Lamport, L.: On interprocess communication, Part I: basic formalism and Part II: algorithms. Distrib. Comput. 1(2), 77–101 (1986)

    Article  MathSciNet  Google Scholar 

  23. Lee, H., Welch, J.L.: Randomized registers and iterative algorithms. Distrib. Comput. 17(3), 209–221 (2005)

    Article  Google Scholar 

  24. Lipton, R.J., Sandberg, J.: PRAM: a scalable shared memory. Technical report, Princeton University (1998)

    Google Scholar 

  25. Lloyd, W., Freedman, M.J., Kaminsky, M., Andersen, D.G.: Don’t settle for eventual: scalable causal consistency for wide-area storage with COPS. In: Proceedings of the 23rd ACM Symposium on Operating Systems Principles (SOSP), pp. 401–416 (2011)

    Google Scholar 

  26. Malkhi, D., Reiter, M.K., Wright, R.N.: Probabilistic quorum systems. In: Proceedings of the 16th ACM Symposium on Principles of Distributed Computing (PODC), pp. 267–273 (1997)

    Google Scholar 

  27. McKenzie, M., Fan, H., Golab, W.M.: Fine-tuning the consistency-latency trade-off in quorum-replicated distributed storage systems. In: Proceedings of the Scalable Cloud Data Management (SCDM) Workshop at the IEEE International Conference on Big Data, pp. 1708–1717 (2015)

    Google Scholar 

  28. Nguyen, S.: Adaptive control for availability and consistency in distributed key-values stores. University of Illinois at Urbana-Champaign (2014)

    Google Scholar 

  29. Rahman, M.R., Tseng, L., Nguyen, S., Gupta, I., Vaidya, N.H.: Characterizing and adapting the consistency-latency tradeoff in distributed key-value stores. ACM Trans. Auton. Adapt. Syst. 11(4), 20:1–20:36 (2017)

    Article  Google Scholar 

  30. Shao, C., Welch, J.L., Pierce, E., Lee, H.: Multiwriter consistency conditions for shared memory registers. SIAM J. Comput. 40(1), 28–62 (2011)

    Article  MathSciNet  Google Scholar 

  31. Terry, D.B., Prabhakaran, V., Kotla, R., Balakrishnan, M., Aguilera, M.K., Abu-Libdeh, H.: Consistency-based service level agreements for cloud storage. In: Proceedings of the 24th ACM Symposium on Operating Systems Principles (SOSP), pp. 309–324 (2013)

    Google Scholar 

  32. Wada, H., Fekete, A., Zhao, L., Lee, K., Liu, A.: Data consistency properties and the trade-offs in commercial cloud storages: the consumers’ perspective. In: Proceedings of the 5th Biennial Conference on Innovative Data Systems Research (CIDR), January 2011

    Google Scholar 

  33. Yu, H., Vahdat, A.: Design and evaluation of a conit-based continuous consistency model for replicated services. ACM Trans. Comput. Syst. 20(3), 239–282 (2002)

    Article  Google Scholar 

  34. Zellag, K., Kemme, B.: How consistent is your cloud application? In: Proceedings of the Third ACM Symposium on Cloud Computing (SoCC), p. 6 (2012)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Shankha Chatterjee .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Chatterjee, S., Golab, W. (2017). Self-tuning Eventually-Consistent Data Stores. In: Spirakis, P., Tsigas, P. (eds) Stabilization, Safety, and Security of Distributed Systems. SSS 2017. Lecture Notes in Computer Science(), vol 10616. Springer, Cham. https://doi.org/10.1007/978-3-319-69084-1_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-69084-1_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-69083-4

  • Online ISBN: 978-3-319-69084-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics