Двадцать пять заповедей SQL - Внимательно относитесь к использованию индексов на таблицах

ОГЛАВЛЕНИЕ

 

4. Внимательно относитесь к использованию индексов на таблицах.

Постарайтесь создать все необходимые индексы. Однако слишком большое число индексов может привести к снижению эффективности. Как же решить, какие столбцы следует индексировать?

  • Создавайте индексы на столбцах, которые часто используются в разделе WHERE встроенных операторов SQL или запросов, используемых конечными пользователями.
  • Индексируйте столбцы, часто используемые в операторах SQL для соединения таблиц.
  • Используйте для индексирования только те столбцы, в которые входит небольшой процент строк с одним и тем же значением.
  • Не индексируйте столбцы, которые используются только в функциях и операторах раздела WHERE запросов.
  • Не индексируйте часто изменяемые столбцы, а также не применяйте индексацию в тех случаях, когда повышение эффективности за счет создания индекса приводит к снижению эффективности при выполнении операций INSERT, UPDATE и DELETE. Выполнение этих операций замедлится из-за необходимости поддерживать индексы.
  • Уникальные индексы лучше неуникальных по причине их более высокой селективности. Используйте уникальные индексы на столбцах первичного ключа и неуникальные индексы на столбцах внешнего ключа и столбцах, часто используемых в разделе WHERE.
  • Создавайте индексы таким образом, чтобы столбцы, используемые в разделе WHERE составляли начальную группу столбцов в ключе индекса.