web-dev-qa-db-ja.com

使用されていないインデックスを確認する方法

Postgresql 9.3 Debian 7

最適化しようとしているレガシーデータベースに多数の巨大なインデックスがあります。役に立たないものをすべて落とすことを考えていますが、どれくらいの頻度で使用されているか、まったく使用されていないかはどうすればわかりますか。

どこかに使用統計情報またはそれを行うためのトリッククエリはありますか?

6

この投稿 を参照してください。これは、重みを引き上げていない可能性があるすべてのインデックスを要約する大きなクエリにリンクしています。

7

pg_stat_user_indexesおよびpg_statio_user_indexesを使用して、インデックスの使用状況を監視できます

統計コレクターの詳細については、次のマニュアルを参照してください。
http://www.postgresql.org/docs/current/static/monitoring-stats.html

ただし、未使用のuniqueインデックスを削除する場合は注意が必要です。これらは読み取りには使用されない可能性がありますが、おそらくデータの整合性にとって不可欠です。