CIDR11_Paper32 - Megastore: Providing Scalable, Highly...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Megastore: Providing Scalable, Highly Available Storage for Interactive Services Jason Baker, Chris Bond, James C. Corbett, JJ Furman, Andrey Khorlin, James Larson, Jean-Michel Leon, Yawei Li, Alexander Lloyd, Vadim Yushprakh Google, Inc. { jasonbaker,chrisbond,jcorbett,jfurman,akhorlin,jimlarson,jm,yaweili,alloyd,vadimy } @google.com ABSTRACT Megastore is a storage system developed to meet the re- quirements of todays interactive online services. Megas- tore 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 avail- ability. 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 net- work with reasonable latency and support seamless failover between datacenters. This paper describes Megastores se- mantics and replication algorithm. It also describes our ex- perience supporting a wide range of Google production ser- vices built with Megastore. Categories and Subject Descriptors C.2.4 [ Distributed Systems ]: Distributed databases; H.2.4 [ Database Management ]: Systems concurrency, distrib- uted databases General Terms Algorithms, Design, Performance, Reliability Keywords Large databases, Distributed transactions, Bigtable, Paxos 1. INTRODUCTION Interactive online services are forcing the storage commu- nity to meet new demands as desktop applications migrate to the cloud. Services like email, collaborative documents, and social networking have been growing exponentially and are testing the limits of existing infrastructure. Meeting these services storage demands is challenging due to a num- ber of conflicting requirements. First, the Internet brings a huge audience of potential users, so the applications must be highly scalable . A service This article is published under a Creative Commons Attribution License (http://creativecommons.org/licenses/by/3.0/), which permits distribution and reproduction in any medium as well allowing derivative works, pro- vided that you attribute the original work to the author(s) and CIDR 2011. 5 th Biennial Conference on Innovative Data Systems Research (CIDR 11) January 9-12, 2011, Asilomar, California, USA. can be built rapidly using MySQL [10] as its datastore, but scaling the service to millions of users requires a complete redesign of its storage infrastructure. Second, services must compete for users. This requires rapid development of fea- tures and fast time-to-market. Third, the service must be responsive; hence, the storage system must have low latency . Fourth, the service should provide the user with a consistent view of the data the result of an update should be visible immediately and durably. Seeing edits to a cloud-hosted spreadsheet vanish, however briefly, is a poor user experi- ence. Finally, users have come to expect Internet services to be up 24/7, so the service must be...
View Full Document

Page1 / 12

CIDR11_Paper32 - Megastore: Providing Scalable, Highly...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online