Langsung ke konten

Arsip

Indexing

1 artikel
Basis Data 15 Sep 2026 5 min read

PostgreSQL Visibility Map Melacak Status Heap Page

PostgreSQL menyimpan metadata visibility tuple di row heap, tetapi memeriksa setiap tuple heap tidak diperlukan ketika seluruh page sudah diketahui memenuhi kondisi yang lebih kuat. Visibility map menyimpan status tingkat page tersebut dalam relation fork yang ringkas. Setiap heap page memiliki dua bit yang bersesuaian. Bit all-visible mencatat bahwa setiap tuple pada page terlihat oleh setiap transaksi saat ini dan mendatang. Bit all-frozen mencatat bahwa setiap tuple pada page telah dibekukan. Fakta tersebut memungkinkan PostgreSQL menghindari pekerjaan dalam index-only scan dan operasi vacuum tanpa memindahkan data visibility MVCC ke dalam index.