pgAssistant — Analisis Performa PostgreSQL
Dokumentasi ringkas pgAssistant: Global Advisor, EXPLAIN ANALYZE, schema inspection, dan opsi AI untuk optimasi PostgreSQL.
Apa itu pgAssistant?
pgAssistant adalah tool open-source untuk menganalisis dan memperbaiki database PostgreSQL. Fokusnya menggabungkan database introspection dengan rekomendasi praktis, bukan hanya menampilkan metrik mentah.
Sumber: beh74/pgassistant-community · Dokumentasi: beh74.github.io/pgassistant-blog
Kapabilitas utama
| Fitur | Kegunaan |
|---|---|
| Global Advisor | Analisis deterministik se-database |
| Query analysis | Parsing EXPLAIN ANALYZE untuk query lambat |
| Schema inspection | DDL + visualisasi relasi |
| Structural checks | Index, FK, tipe data, statistik |
| Config checks | Konfigurasi & maintenance |
| AI (opsional) | Rewrite query & saran tambahan |
Global Advisor (sejak v2.8)
Global Advisor menjalankan set pemeriksaan terhadap system catalog PostgreSQL dan menghasilkan daftar rekomendasi.
Setiap rekomendasi memuat:
- Rank (prioritas)
- Confidence level
- Estimasi impact
- Estimasi effort
- Saran SQL (jika relevan)
Temuan tipikal:
- Index hilang atau tidak terpakai
- Index redundan
- Masalah foreign key
- Statistik usang
- Table bloat / maintenance tertunda
- Masalah konfigurasi
Analisis bersifat deterministik: state database yang sama menghasilkan hasil yang sama.
Analisis query
Untuk investigasi query spesifik:
- Ambil plan dengan
EXPLAIN (ANALYZE, BUFFERS) - Parse plan di pgAssistant
- Dapatkan insight join strategy, index suggestion, dan pola eksekusi
AI (opsional)
AI tidak wajib. Jika diaktifkan, bisa membantu:
- Rewrite query
- Saran optimasi tambahan
- Cek naming/convention
Konteks (schema, statistik, plan) dikirim agar saran lebih relevan.
Quick start
Docker (disarankan)
Ikuti panduan resmi: startup Docker
# Lihat image di Docker Hub: bertrand73/pgassistant
docker pull bertrand73/pgassistant
Python (local)
Live demo
- Demo: https://ov-004f8b.infomaniak.ch/
- DB demo (Northwind):
postgresql://postgres:demo@demo-db:5432/northwind - Demo publik tanpa AI; jangan masukkan API key pribadi
- Database di-reset harian
Untuk siapa?
- Developer yang menulis SQL
- DevOps yang troubleshoot performa
- Tim tanpa DBA dedicated
Catatan praktik
- Jalankan Global Advisor di staging/replica dulu, bukan langsung production peak.
- Prioritaskan rekomendasi high impact / low effort.
- Validasi setiap saran index dengan
EXPLAIN ANALYZEpada workload nyata. - AI hanya pelengkap — keputusan akhir tetap di engineer.
Lisensi & tautan
- Lisensi: MIT
- Repo: https://github.com/beh74/pgassistant-community
- Docs: https://beh74.github.io/pgassistant-blog/