Исходный код вики Индексы

Версия 7.1 от Alexandr Fokin на 2022/06/21 02:53

Последние авторы
1 === Основные тезисы: ===
2
3 1) Индексы ускоряют выборку данных из таблицы, но замедляют вставку и редактирование (если изменяются столбцы задействованные хотя бы в одном индексе).
4 2) При создании индексов стоит учитывать:
5 2.1) Как часто с данной таблицей будут производиться операции чтения/записи.
6 2.2) Какие конкретно запросы будут выполняться. (по каким полям будет идти поиск, соединение, группировка, сортировка: WHERE, JOIN)
7 2.3) Предполагаемые размеры таблицы.
8
9 ----
10
11 ==== Критерий - кластеризованный индекс ====
12
13 Кластеризованный индекс
14 Данный индекс определяет порядок строк в таблице.
15 При вставке новой записи в таблицу рассчитывается значение кластеризованного индекса для новой строки, на основе которого выполняется вставка в имеющийся набор строк.
16 Для таблицы может быть только 1 кластеризованный индекс. Обычно совпадает с первичным ключом. Также в таблице может отсутствовать кластеризованного индекса (строки будут расположены в порядке их добавления).
17
18 Некластеризованный индекс
19 Не влияет на физический порядок строк. Используется для оптимизации выборки данных.
20
21 ----
22
23 Вопросы
24 1) Оценка состояния индексов. Поддержка индексов в актуальном состоянии.
25 Критерии состояния индекса (фрагментация).
26 Действия по обслуживанию индекса (перестроение, пересоздание).
27
28 ----
29
30 **Ссылки:**
31
32 14 вопросов об индексах в SQL Server, которые вы стеснялись задать
33 https://habr.com/ru/post/247373/
34
35 Основы индексов в Microsoft SQL Server
36 https://info-comp.ru/programmirovanie/575-index-basics-in-ms-sql-server.html
37
38 Обслуживание индексов и статистик MS SQL Server
39 https://infostart.ru/public/256292/
40
41
42 Неожиданная находка, которая освобождает 20 GB неиспользованного индексного пространства [Postgres]
43 https://habr.com/ru/company/otus/blog/672102/