L'auteur exclut l'usage de VACUUM en se focalisant sur sa forme VACUUM FULL, qui en effet réclame un verrou exclusif sur la table pour fonctionner.
Et un VACUUM simple ne restitue pas l'espace au système d'exploitation.
Mais le VACUUM simple récupère quand même l'espace en le rendant disponible pour les prochaines opérations sur la table. Pour des tables qui subissent des cycles importants "INSERT/DELETE", c'est déjà une très bonne façon de limiter l'augmentation déraisonnable de la place consommée par la table.
Par exemple, si j'ai une table de transactions qui insère 1,000,000 lignes tous les jours, mais que je fais des purges au bout de 30 jours roulants, les 1,000,000 nouvelles lignes de demain iront utiliser l'espace libéré par la purge du jour. Et je n'ai que 1/30e de ma table en bloat, ce qui est acceptable au vu du gain en simplicité de maintenance et en performance (le VACUUM peut fonctionner en parallèle).
Après, les techniques données dans l'article permettent effectivement de faire un nettoyage bien plus profond, complet, et surtout de bien sélectionner où le faire.
Petit avis personnel : pour chaque table, on devrait avoir un plan d'estimation de ce qu'elle devrait consommer. Et ensuite suivre l'écart entre la taille estimée et la taille réelle pour décider d'une prise d'action.
# Sur l'usage de VACUUM
Posté par Dring . Évalué à 8.
L'auteur exclut l'usage de VACUUM en se focalisant sur sa forme VACUUM FULL, qui en effet réclame un verrou exclusif sur la table pour fonctionner.
Et un VACUUM simple ne restitue pas l'espace au système d'exploitation.
Mais le VACUUM simple récupère quand même l'espace en le rendant disponible pour les prochaines opérations sur la table. Pour des tables qui subissent des cycles importants "INSERT/DELETE", c'est déjà une très bonne façon de limiter l'augmentation déraisonnable de la place consommée par la table.
Par exemple, si j'ai une table de transactions qui insère 1,000,000 lignes tous les jours, mais que je fais des purges au bout de 30 jours roulants, les 1,000,000 nouvelles lignes de demain iront utiliser l'espace libéré par la purge du jour. Et je n'ai que 1/30e de ma table en bloat, ce qui est acceptable au vu du gain en simplicité de maintenance et en performance (le VACUUM peut fonctionner en parallèle).
Après, les techniques données dans l'article permettent effectivement de faire un nettoyage bien plus profond, complet, et surtout de bien sélectionner où le faire.
Petit avis personnel : pour chaque table, on devrait avoir un plan d'estimation de ce qu'elle devrait consommer. Et ensuite suivre l'écart entre la taille estimée et la taille réelle pour décider d'une prise d'action.
[^] # Re: Sur l'usage de VACUUM
Posté par Gil Cot ✔ (site web personnel, Mastodon) . Évalué à 2.
Tellement d'accord avec cet avis personnel avec lequel tu conclus. <3
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.