За словами Крейга Рінгера :
Хоча, як правило, добре створити індекс на (або включати) стовпці сторонніх ключів на стороні референції, це не потрібно. Кожен доданий вами індекс трохи уповільнює операції DML, тому ви платите за ефективність кожного
INSERT,UPDATEабоDELETE. Якщо індекс використовується рідко, можливо, його не варто мати.
Як визначити, чи перевага додавання індексу перевищує його вартість?
Чи проводите випробування блоку до / після додавання індексу та перевіряєте на загальне підвищення продуктивності? Або є кращий спосіб?
pg_stat_user_indexesдопомагає вам в цьому, показуючи інформацію про використання індексу. Щоб оцінити витрати на обслуговування, ви можете ознайомитись із активністю запису вашої таблиці,pg_stat_user_tablesале через HOT, не всі оновлення обов'язково повинні торкатися індексу, щоб ви могли трохи завищити.