Léxico de TI › Bancos de dados › Spanner TrueTime

Spanner TrueTime

Bancos de dados Svenska → Atualizado: 2026-09-30

A API de relógio do Google Spanner, que informa a hora como um intervalo de incerteza [earliest, latest] em vez de um número único, garantido por GPS e relógios atômicos em cada datacenter. Permite serializabilidade global com consistência externa — algo há muito considerado impossível.

A ideia: em vez de fingir que os relógios são exatos, o TrueTime reconhece explicitamente a incerteza (geralmente alguns milissegundos), graças a hardware de tempo redundante. O truque é o "commit wait": numa transação, o Spanner espera passar o intervalo de incerteza (ε) antes de confirmar, garantindo que nenhuma transação posterior recebeu um timestamp menor → os timestamps globais respeitam a ordem real em todo o planeta. Isso dá "consistência externa" (linearizabilidade) para um banco de dados em escala planetária. Preço: hardware especial (antenas GPS, relógios atômicos) e uma pequena latência de commit. CockroachDB e Yugabyte imitam a ideia sem o hardware, usando HLC + novas tentativas. Um marco dos bancos de dados distribuídos (artigo de 2012). Relacionado ao HLC e à linearizabilidade.

← Voltar ao léxico