Léxico de TI › Bancos de dados › Snapshot MVCC

Snapshot MVCC

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

O "retrato" consistente do banco que uma transação enxerga sob o Multi-Version Concurrency Control. Cada transação lê a versão de cada linha que era válida quando o snapshot foi tirado, então leitores nunca bloqueiam escritores e vice-versa.

Mecânica: em vez de travar linhas na leitura, o MVCC mantém várias versões de cada linha. Quando uma transação (ou comando) começa, ela recebe um snapshot que define quais outras transações já estavam confirmadas naquele momento. A leitura só enxerga versões de transações incluídas no snapshot, o que dá uma visão estável e consistente mesmo enquanto outros escrevem. O PostgreSQL guarda as versões antigas na própria tabela (limpas pelo VACUUM); o InnoDB as reconstrói pelo undo log. Ganho: alta concorrência, "leitores não bloqueiam escritores". É isso que torna possíveis níveis de isolamento como Repeatable Read e snapshot isolation, a base da concorrência transacional moderna. Relacionado a undo log e falha de serialização.

← Voltar ao léxico