Publication Data
Megastore: Providing Scalable, Highly Available Storage for Interactive Services
Abstract: 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
allows us to synchronously replicate each write across a wide area network with
reasonable latency and support seamless failover between datacenters. This paper
describes Megastore's semantics and replication algorithm. It also describes our
experience supporting a wide range of Google production services built with Megastore.
