Increasing Consistency in Multi-site Data Stores: Megastore-CGC and Its Formal Analysis
نویسندگان
چکیده
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-TimeMaude 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.
منابع مشابه
Formal Modeling and Analysis of Google's Megastore in Real-Time Maude
Cloud systems need to replicate data to ensure scalability and high availability. To enable their use for applications where consistency of the data is important, cloud systems should provide transactions. Megastore, developed and widely applied at Google, is one of very few cloud data stores that provide transactions; i.e., both data replication, fault tolerance, and data consistency. However,...
متن کاملDesign and Validation of Cloud Computing Data Stores using Formal Methods
To deal with large amounts of data and to ensure high availability, cloud computing systems rely on distributed, partitioned, and replicated data stores. However, such data stores are complex artifacts that are very hard to design and analyze. I argue that formal specification and model checking should be beneficial during their design and validation. In particular, I propose rewriting logic an...
متن کاملDesign, Formal Modeling, and Validation of Cloud Storage Systems using Maude
To deal with large amounts of data while offering high availability, throughput and low latency, cloud computing systems rely on distributed, partitioned, and replicated data stores. Such cloud storage systems are complex software artifacts that are very hard to design and analyze. We argue that formal specification and model checking analysis should significantly improve their design and valid...
متن کاملMegastore: Providing Scalable, Highly Available Storage for Interactive Services
Megastore is a storage system developed to meet the requirements of today’s interactive online services. Megastore blends the scalability of a NoSQL datastore with the convenience of a traditional RDBMS in a novel way, and provides both strong consistency guarantees and high availability. We provide fully serializable ACID semantics within fine-grained partitions of data. This partitioning allo...
متن کاملManaging Geo-replicated Data in Multi-datacenters
Over the past few years, cloud computing and the growth of global large scale computing systems have led to applications which require data management across multiple datacenters. Initially the models provided single row level transactions with eventual consistency. Although protocols based on these models provide high availability, they are not ideal for applications needing a consistent view ...
متن کامل