Google's realtime search system stores tens of petabytes of data across thousands of machines and processes billions of updates per day. It uses a distributed storage system called Bigtable to store the large volume of indexing data but Bigtable cannot natively support incremental updates or enforce data integrity. Google developed Percolator, a new system built on top of Bigtable, to allow incremental processing of updates through transactions and notifications at large scale while maintaining data consistency. Percolator provides the ability to perform ACID transactions over Bigtable and organize incremental computations through observer notifications.