James C. Corbett
James C. Corbett received his PhD in Computer Science from the University of Massachusetts at Amherst and was on the faculty of the Information and Computer Science Department of the University of Hawaii from 1992 to 2000. He is currently in the storage testing group at Google.
Research Areas
Authored Publications
Sort By
Spanner: Google's Globally Distributed Database
Preview
Michael Epstein
Andrew Fikes
Christopher Frost
J. J. Furman
Andrey Gubarev
Christopher Heiser
Sebastian Kanthak
Eugene Kogan
Hongyi Li
Sergey Melnik
David Mwaura
David Nagle
Rajesh Rao
Lindsay Rolig
Yasushi Saito
Michal Szymaniak
Christopher Taylor
Ruth Wang
Dale Woodford
ACM Trans. Comput. Syst., 31 (2013), pp. 8
Spanner: Google's Globally-Distributed Database
Michael Epstein
Andrew Fikes
Christopher Frost
JJ Furman
Andrey Gubarev
Christopher Heiser
Peter Hochschild
Sebastian Kanthak
Eugene Kogan
Hongyi Li
Sergey Melnik
David Mwaura
David Nagle
Rajesh Rao
Lindsay Rolig
Dale Woodford
Yasushi Saito
Christopher Taylor
Michal Szymaniak
Ruth Wang
OSDI (2012)
Preview abstract
Spanner is Google's scalable, multi-version, globally-distributed, and synchronously-replicated database. It is the first system to distribute data at global scale and support externally-consistent distributed transactions. This paper describes how Spanner is structured, its feature set, the rationale underlying various design decisions, and a novel time API that exposes clock uncertainty. This API and its implementation are critical to supporting external consistency and a variety of powerful features: non-blocking reads in the past, lock-free read-only transactions, and atomic schema changes, across all of Spanner.
View details
Megastore: Providing Scalable, Highly Available Storage for Interactive Services
Jason Baker
JJ Furman
Andrey Khorlin
James Larson
Jean-Michel Leon
Yawei Li
Vadim Yushprakh
Proceedings of the Conference on Innovative Data system Research (CIDR) (2011), pp. 223-234
Preview 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.
View details