Percolator (transakcje)
Model Google'a (2010) do budowania rozproszonych transakcji ACID na magazynie klucz-wartość (Bigtable) przez dwufazowy commit sterowany przez klienta i centralną wyrocznię znaczników czasu. Podstawa nowoczesnych rozproszonych baz SQL, takich jak TiDB.
Tło: Google zbudował Percolator, by przyrostowo aktualizować indeks wyszukiwarki, i potrzebował transakcji nad Bigtable, który sam ich nie miał. Mechanizm: dwufazowy commit sterowany przez klienta, który zapisuje metadane blokad i zatwierdzeń w dodatkowych kolumnach Bigtable; „Timestamp Oracle” wydaje globalnie uporządkowane znaczniki czasu na potrzeby izolacji snapshot. Nie ma centralnej usługi koordynatora transakcji — logika mieszka w kliencie i magazynie danych. Dziedzictwo: model transakcji TiDB wprost wyrasta z Percolatora, a idee wpłynęły na całą falę rozproszonych baz SQL. Nie mylić ze Spannerem (który korzysta ze sprzętowego TrueTime). Wpływowy artykuł, który pokazał, że ACID da się dostać na skalowalnym magazynie KV. Powiązane z transakcją rozproszoną i Spanner TrueTime.