Menurut Craig Ringer :
Meskipun biasanya merupakan ide yang baik untuk membuat indeks pada (atau termasuk) kolom kunci asing di sisi referensi Anda, itu tidak diperlukan. Setiap indeks yang Anda tambahkan memperlambat operasi DML sedikit, sehingga Anda membayar biaya kinerja pada setiap
INSERT
,UPDATE
atauDELETE
. Jika indeks jarang digunakan, mungkin tidak layak dimiliki.
Bagaimana Anda menentukan apakah manfaat dari penambahan indeks melebihi biayanya?
Apakah Anda melakukan tes unit profil sebelum / setelah menambahkan indeks dan memeriksa untuk kenaikan kinerja keseluruhan? Atau ada cara yang lebih baik?
pg_stat_user_indexes
membantu memandu Anda dengan ini, menunjukkan informasi tentang penggunaan indeks. Untuk memperkirakan biaya perawatan Anda dapat melihat aktivitas menulis tabel Andapg_stat_user_tables
tetapi karena HOT, tidak semua pembaruan harus menyentuh indeks sehingga Anda mungkin melebih-lebihkan sedikit.