Sobes.tech
Junior — Middle

Pode explicar como funciona o comando VACUUM no PostgreSQL e por que é utilizado?

sobes.tech IA

Resposta da IA

O comando VACUUM no PostgreSQL é utilizado para limpar a base de dados de linhas 'mortas' que permanecem após operações de atualização e eliminação. Isto ajuda a libertar espaço e prevenir o crescimento das tabelas.

Principais tarefas do VACUUM:

  • Eliminar versões antigas de linhas (tuplas mortas) para que não ocupem espaço.
  • Atualizar as estatísticas para o planejador de consultas (se usar VACUUM ANALYZE).
  • Prevenir o estouro do ID de transação (wraparound).

Sem executar o VACUUM regularmente, o desempenho da base pode deteriorar-se e o tamanho das tabelas pode aumentar.

Exemplo de chamada em SQL:

VACUUM;
VACUUM ANALYZE;

Em Go, pode executar este comando através do driver de base de dados, por exemplo:

_, err := db.Exec("VACUUM")
if err != nil {
    log.Fatal(err)
}