В одной из бывших компаний, в которой я работал, практическое правило заключалось в том, что в таблице не должно быть более одного индекса (с учетом нечетных исключений и некоторых родительских таблиц, содержащих ссылки почти на все другие таблицы и, следовательно, обновляемых очень часто).
Идея состоит в том, что часто поддержание индексов стоит столько же или больше, чем они получают . Обратите внимание, что этот вопрос отличается от indexed-view-vs-indexes-on-table , поскольку мотивация заключается не только в отчетности.
Так ли это? Стоит ли этого индексного пуризма?
В своей карьере вы обычно избегаете использования индексов?
Каковы общие крупномасштабные рекомендации относительно индексов?
В настоящее время и в последней компании мы используем SQL Server, поэтому любые рекомендации для конкретных продуктов также приветствуются.