Sobes.tech
Junior — Middle

Можете ли објаснити како ради команда VACUUM у PostgreSQL-у и зашто се користи?

sobes.tech АИ

Одговор од АИ

Команда VACUUM у PostgreSQL-у се користи за чишћење базе података од 'мртвих' редова који остају након операција ажурирања и брисања. Ово помаже у ослобађању простора и спречава раст табела.

Главни задаци VACUUM:

  • Уклањање старијих верзија редова (мртвих кортежа) како не би заузимали простор.
  • Ажурирање статистика за планер упита (ако се користи VACUUM ANALYZE).
  • Превенција прелива транзакцијског ИД-а (wraparound).

Без редовног извршавања VACUUM-а, перформансе базе могу се погоршати, а величина табела повећати.

Пример позива у SQL-у:

VACUUM;
VACUUM ANALYZE;

У Go-у, можете извршити ову команду преко драйвера базе података, на пример:

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