VACUUM est le processus de maintenance de PostgreSQL qui récupère le stockage des tuples morts (versions de lignes obsolètes laissées par MVCC) et met à jour les statistiques. Comme le MVCC de Postgres crée des lignes mortes à chaque UPDATE/DELETE, VACUUM est essentiel pour éviter le ballonnement et maintenir la base de données en bonne santé. Autovacuum l'automatise.
Pourquoi les tuples morts existent (la connexion MVCC)
MVCC: an UPDATE/DELETE doesn't overwrite a row — it marks the old version obsolete
(a "dead tuple") and may create a new one. Dead tuples accumulate over time.
→ Without cleanup, dead tuples cause BLOAT: wasted disk space, slower scans
(more data to read), degraded performance.
VACUUM reclaims this dead space → keeps tables compact and queries fast.
