Bigtable is a fully managed wide-column and key-value NoSQL database service for large analytical and operational workloads as part of the Google Cloud portfolio. Bigtable development began in 2004. It is now used by a number of Google applications, such as Google Analytics, web indexing, MapReduce, which is often used for generating and modifying data stored in Bigtable, Google Maps, Google Books search, "My Search History", Google Earth, Blogger.com, Google Code hosting, YouTube, and Gmail. Google's reasons for developing its own database include scalability and better control of performance characteristics. Google's Spanner RDBMS is layered on an implementation of Bigtable with a Paxos group for two-phase commits to each table. Google F1 was built using Spanner to replace an implementation based on MySQL. Apache HBase and Cassandra are some of the best known open source projects that were modeled after Bigtable. On May 6, 2015, a public version of Bigtable was made available as a part of Google Cloud under the name Cloud Bigtable. As of January 2022, Bigtable manages over 10 Exabytes of data and serves more than 5 billion requests per second. On January 27, 2022, Google announced a number of updates to Bigtable, including automated scalability. Bigtable is one of the prototypical examples of a wide-column store. It maps two arbitrary string values (row key and column key) and timestamp (hence three-dimensional mapping) into an associated arbitrary byte array. It is not a relational database and can be better defined as a sparse, distributed multi-dimensional sorted map. It is built on Colossus (), Chubby Lock Service, SSTable (log-structured storage like LevelDB) and a few other Google technologies. Bigtable is designed to scale into the petabyte range across "hundreds or thousands of machines, and to make it easy to add more machines [to] the system and automatically start taking advantage of those resources without any reconfiguration".
Paolo Ienne, Mikhail Asiatici, Damian Maiorano
Anastasia Ailamaki, Panagiotis Sioulas