Senior
PostgreSQL-də VACUUM nə edir və niyə ölü sətirlər yaranır?
sobes.tech Süni İntellekt
AI-dan cavab
PostgreSQL-də satırların yenilənməsi və ya silinməsi zamanı köhnə versiyalar dərhal silinmir, əvəzinə "ölü tuple" (dead tuples) vəziyyətinə keçir. Bu, MVCC (Çox Versiyalı Eyni Vaxtda Nəzarət) ilə əlaqədardır və tranzaksiyaların izoləsini təmin edir. Ölü satırlar yer tutar və verilənlər bazasının performansını yavaşlada bilər.
VACUUM əmri bu ölü satırları təmizləyir, yer boşaldır və cədvəllərin və indekslərin böyüməsinin qarşısını alır. Adi VACUUM sadəcə sahəni boş yer kimi işarələyir, VACUUM FULL isə cədvəli sıxışdırır və onun fiziki ölçüsünü azaldır.
Nümunə:
VACUUM mənim_cədvəl;
Beləliklə, VACUUM performansı qoruyur və disk sahəsinin çox istifadəsinin qarşısını alır.