Индексы

Версия 7.10 от Alexandr Fokin на 2022/11/25 17:49

Основные тезисы:

1) Индексы ускоряют выборку данных из таблицы, но замедляют вставку и редактирование (если изменяются столбцы задействованные хотя бы в одном индексе).
2) При создании индексов стоит учитывать:
2.1) Как часто с данной таблицей будут производиться операции чтения/записи.
2.2) Какие конкретно запросы будут выполняться. (по каким полям будет идти поиск, соединение, группировка, сортировка: WHERE, JOIN)
2.3) Предполагаемые размеры таблицы.


Кластеризованный индексДанный индекс определяет порядок строк в таблице, может существовать только в единственном экземпляре.
При вставке новой записи в таблицу рассчитывается значение кластеризованного индекса для новой строки, на основе которого выполняется вставка в имеющийся набор строк.
Для таблицы может быть только 1 кластеризованный индекс. Обычно совпадает с первичным ключом. Также в таблице может отсутствовать кластеризованного индекса (строки будут расположены в порядке их добавления).


Ссылки:

MSSQL 14 вопросов об индексах в SQL Server, которые вы стеснялись задать
https://habr.com/ru/post/247373/
 Основы индексов в Microsoft SQL Server
https://info-comp.ru/programmirovanie/575-index-basics-in-ms-sql-server.html
 Обслуживание индексов и статистик MS SQL Server
https://infostart.ru/public/256292/
   
PostgreSQL Неожиданная находка, которая освобождает 20 GB неиспользованного индексного пространства [Postgres]
https://habr.com/ru/company/otus/blog/672102/
 Postgres ProfessionalИндексы в PostgreSQL — 1
https://habr.com/ru/company/postgrespro/blog/326096/
  Индексы в PostgreSQL — 2
https://habr.com/ru/company/postgrespro/blog/326106/
   
   
   
   
   

ОбслуживаниеОценка состояния индексов. Поддержка индексов в актуальном состоянии.
Критерии состояния индекса (фрагментация).
Действия по обслуживанию индекса (перестроение, пересоздание).
Размеры индексаУмещается ли индекс целиком в оперативной памяти
  

 

Теги: