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.
Similar content being viewed by others
References
Abadi, D.: Consistency tradeoffs in modern distributed database system design: CAP is only part of the story. IEEE Comput. 45(2), 37–42 (2012)
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)
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)
Attiya, H., Bar-Noy, A., Dolev, D.: Sharing memory robustly in message-passing systems. J. ACM 42(1), 124–142 (1995)
Attiya, H., Welch, J.L.: Sequential consistency versus linearizability. ACM Trans. Comput. Syst. 12(2), 91–122 (1994)
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)
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)
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)
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)
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)
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)
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
Gibbons, P., Korach, E.: Testing shared memories. SIAM J. Comput. 26, 1208–1244 (1997)
Gifford, D.K.: Weighted voting for replicated data. In: Proceedings of the 7th ACM Symposium on Operating Systems Principles (SOSP), pp. 150–162 (1979)
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
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)
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)
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
Herlihy, M., Wing, J.M.: Linearizability: a correctness condition for concurrent objects. ACM Trans. Programm. Lang. Syst. 12(3), 463–492 (1990)
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)
Lakshman, A., Malik, P.: Cassandra: a decentralized structured storage system. SIGOPS Oper. Syst. Rev. 44(2), 35–40 (2010)
Lamport, L.: On interprocess communication, Part I: basic formalism and Part II: algorithms. Distrib. Comput. 1(2), 77–101 (1986)
Lee, H., Welch, J.L.: Randomized registers and iterative algorithms. Distrib. Comput. 17(3), 209–221 (2005)
Lipton, R.J., Sandberg, J.: PRAM: a scalable shared memory. Technical report, Princeton University (1998)
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)
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)
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)
Nguyen, S.: Adaptive control for availability and consistency in distributed key-values stores. University of Illinois at Urbana-Champaign (2014)
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)
Shao, C., Welch, J.L., Pierce, E., Lee, H.: Multiwriter consistency conditions for shared memory registers. SIAM J. Comput. 40(1), 28–62 (2011)
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)
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
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)
Zellag, K., Kemme, B.: How consistent is your cloud application? In: Proceedings of the Third ACM Symposium on Cloud Computing (SoCC), p. 6 (2012)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights 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)