Junior — Middle
Môžete vysvetliť, ako funguje príkaz VACUUM v PostgreSQL a na čo sa používa?
sobes.tech AI
Odpoveď od AI
Príkaz VACUUM v PostgreSQL sa používa na čistenie databázy od 'mŕtvych' riadkov, ktoré zostávajú po operáciách aktualizácie a mazania. Pomáha uvoľniť miesto a zabrániť rastu tabuliek.
Hlavné úlohy VACUUM:
- Odstránenie starších verzií riadkov (mŕtvych tuple-ov), aby nezaberali miesto.
- Aktualizácia štatistík pre plánovač dotazov (ak sa používa VACUUM ANALYZE).
- Prevencia pretečenia transakčného ID (wraparound).
Bez pravidelného vykonávania VACUUM môže dôjsť k zhoršeniu výkonu databázy a zväčšeniu veľkosti tabuliek.
Príklad volania v SQL:
VACUUM;
VACUUM ANALYZE;
V Go môžete tento príkaz vykonať cez ovládač databázy, napríklad:
_, err := db.Exec("VACUUM")
if err != nil {
log.Fatal(err)
}