Mengoptimalkan, memantau, dan memecahkan masalah operasi VACUUM di PostgreSQL

Dokumen ini menjelaskan dasar-dasar operasi VACUUM dalam database PostgreSQL. Bagian ini juga menjelaskan mekanisme untuk memantau dan menyesuaikan mesin database yang mempertahankan kondisi instance database.

PostgreSQL menggunakan protokol konkurensi berbasis snapshot yang membuat beberapa versi baris data sambil memodifikasi data. Versi baris data ini digunakan untuk membaca versi data yang terlihat menggunakan snapshot yang dihitung tanpa mendapatkan kunci baca pada baris data. PostgreSQL mempertahankan ID transaksi (ID transaksi yang dimasukkan dan dihapus) untuk setiap baris data dan menggunakan ID transaksi beserta snapshot yang dihitung untuk menentukan visibilitas baris. Seiring dengan perkembangan data karena versi data lama, waktu yang dibutuhkan untuk memindai data (pemindaian tabel atau pemindaian indeks) pun meningkat. Untuk mengoptimalkan waktu respons operasi pemindaian dan untuk menggunakan ruang secara efisien, Anda perlu mengklaim kembali versi dan metadata (misalnya, ID transaksi) yang digunakan untuk mempertahankan versi tersebut.

Operasi VACUUM mengklaim kembali versi yang dihapus (pembersihan sampah memori) dan ID transaksi (pembekuan ID transaksi). Operasi VACUUM beroperasi pada data dalam berbagai mode dengan tingkat ketersediaan data yang berbeda. Pembekuan ID transaksi sangat penting bagi kondisi sistem database karena sistem akan memblokir penulis setiap kali ruang ID transaksi yang digunakan memasuki ruang yang dicadangkan.

Tugas autovacuum yang Anda konfigurasi terus-menerus mencoba mengklaim kembali ID transaksi, tetapi tugas tersebut bisa gagal. Kegagalan ini disebabkan oleh konfigurasi yang tidak memadai atau karena rasio pembuatan ID transaksi sangat tinggi sehingga tugas autovacuum tidak dapat memenuhi workload. Tujuan dari dokumen ini adalah untuk menunjukkan cara menggunakan operasi VACUUM beserta mekanisme untuk menyesuaikan dan memantau berbagai aspek operasi VACUUM.

Ringkasan

Dokumen ini meliputi hal-hal berikut:

  • Membekukan ID transaksi.
  • Memantau ID transaksi.
  • Mengklaim kembali ruang penyimpanan.
  • Mengonfigurasi pemberitahuan Cloud Monitoring otomatis.

Untuk membaca panduan layanan yang lengkap, klik tombol:

Download PDF