Skip to main content

Increasing Consistency in Multi-site Data Stores: Megastore-CGC and Its Formal Analysis

  • Conference paper
Software Engineering and Formal Methods (SEFM 2014)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 8702))

Included in the following conference series:

Abstract

Data stores for cloud infrastructures provide limited consistency guarantees, which restricts the applicability of the cloud for many applications with strong consistency requirements, such as financial and medical information systems. Megastore is a replicated data store used in Google’s cloud infrastructure. Data are partitioned into entity groups, and consistency is only guaranteed if each transaction only accesses data from a single entity group. This paper extends Megastore to also provide consistency for transactions accessing data from multiple entity groups, thereby increasing the applicability of such cloud data stores. Our extension, Megastore-CGC, achieves this extra consistency without introducing significant additional message exchanges. We used the formal specification language and analysis tool Real-Time Maude throughout the development of Megastore-CGC. We introduce Megastore-CGC, its Real-Time Maude specification, and show how Real-Time Maude can estimate the performance of Megastore-CGC and model check Megastore-CGC.

This work was partially supported by AFOSR Grant FA8750-11-2-0084.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Baker, J., et al.: Megastore: Providing scalable, highly available storage for interactive services. In: CIDR (2011), http://www.cidrdb.org

  2. Campbell, D.G., Kakivaya, G., Ellis, N.: Extreme scale with full SQL language support in Microsoft SQL Azure. In: SIGMOD 2010, pp. 1021–1024. ACM (2010)

    Google Scholar 

  3. Chang, F., et al.: Bigtable: A distributed storage system for structured data. ACM Trans. Comput. Syst. 26(2), 4:1–4:26 (2008)

    Google Scholar 

  4. Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C.: All About Maude - A High-Performance Logical Framework. LNCS, vol. 4350. Springer, Heidelberg (2007)

    MATH  Google Scholar 

  5. Corbett, J.C., et al.: Spanner: Google’s globally-distributed database. In: OSDI 2012. USENIX (2012)

    Google Scholar 

  6. Das, S., Agrawal, D., Abbadi, A.E.: ElasTraS: An elastic transactional data store in the cloud. In: USENIX HotCloud. USENIX (2009)

    Google Scholar 

  7. DeCandia, G., et al.: Dynamo: Amazon’s highly available key-value store. SIGOPS Oper. Syst. Rev. 41, 205–220 (2007)

    Article  Google Scholar 

  8. Eckhardt, J., Mühlbauer, T., AlTurki, M., Meseguer, J., Wirsing, M.: Stable availability under denial of service attacks through formal patterns. In: de Lara, J., Zisman, A. (eds.) FASE 2012. LNCS, vol. 7212, pp. 78–93. Springer, Heidelberg (2012)

    Google Scholar 

  9. Grov, J., Ölveczky, P.C.: Formal modeling and analysis of Google’s Megastore in Real-Time Maude. In: Iida, S., Meseguer, J., Ogata, K. (eds.) Futatsugi Festschrift. LNCS, vol. 8373, pp. 494–519. Springer, Heidelberg (2014)

    Google Scholar 

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

    Article  Google Scholar 

  11. Lamport, L.: Paxos made simple. ACM Sigact News 32(4), 18–25 (2001)

    Google Scholar 

  12. Munir, H., Moayyed, M., Petersen, K.: Considering rigor and relevance when evaluating test driven development: A systematic review. Inform. Softw. Techn. (2014)

    Google Scholar 

  13. Ölveczky, P.C., Meseguer, J.: Semantics and pragmatics of Real-Time Maude. Higher-Order and Symbolic Computation 20(1-2), 161–196 (2007)

    Article  MATH  Google Scholar 

  14. Ölveczky, P.C., Thorvaldsen, S.: Formal modeling, performance estimation, and model checking of wireless sensor network algorithms in Real-Time Maude. Theoretical Computer Science 410(2-3), 254–280 (2009)

    Article  MATH  MathSciNet  Google Scholar 

  15. Patterson, S., et al.: Serializability, not serial: concurrency control and availability in multi-datacenter datastores. Proc. VLDB 5(11), 1459–1470 (2012)

    Article  Google Scholar 

  16. Rao, J., Shekita, E.J., Tata, S.: Using Paxos to build a scalable, consistent, and highly available datastore. Proc. VLDB 4(4), 243–254 (2011)

    Article  Google Scholar 

  17. Skeirik, S., Bobba, R.B., Meseguer, J.: Formal analysis of fault-tolerant group key management using ZooKeeper. In: Proc. CCGRID. IEEE (2013)

    Google Scholar 

  18. Stonebraker, M., Cattell, R.: 10 rules for scalable performance in ‘simple operation’ datastores. Commun. ACM 54(6), 72–80 (2011)

    Article  Google Scholar 

  19. Thomson, A., et al.: Calvin: Fast distributed transactions for partitioned database systems. In: Proc. SIGMOD 2012. ACM (2012), http://doi.acm.org/10.1145/2213836.2213838

  20. Weikum, G., Vossen, G.: Concurrency Control and Recovery in Database Systems. Morgan Kaufman (2001)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

Grov, J., Ölveczky, P.C. (2014). Increasing Consistency in Multi-site Data Stores: Megastore-CGC and Its Formal Analysis. In: Giannakopoulou, D., Salaün, G. (eds) Software Engineering and Formal Methods. SEFM 2014. Lecture Notes in Computer Science, vol 8702. Springer, Cham. https://doi.org/10.1007/978-3-319-10431-7_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-10431-7_12

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-10430-0

  • Online ISBN: 978-3-319-10431-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics