Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 19085|Ответ: 2

[Источник] SQL Server создаёт индекс

[Скопировать ссылку]
Опубликовано 20.09.2019 9:31:08 | | |
Концепция индексации

Цель создания индекса — повысить производительность системы базы данных, ускорить скорость запросов данных и сократить время отклика системы.
Что такое индекс: Индекс в базе данных похож на оглавление книги, где вы можете быстро найти нужную информацию, не читая всю книгу.
В базе данных программа использует индексы для быстрого запроса данных в таблице без необходимости сканировать всю таблицу.
Оглавление книги — это список слов и номеров страниц, в которых они расположены, а индекс в базе данных — это список значений в таблице, где хранится каждое из них.
Плюсы и минусы индексирования: Большая часть накладных расходов на выполнение запросов связана с введением и выводом, и одной из основных целей использования индексов для повышения производительности является избегание полного сканирования таблицы, поскольку полное сканирование таблицы должно считывать каждую страницу данных таблицы с диска, и если есть индекс, указывающий на значение, запрос достаточно прочитать его на диск всего несколько раз.
Поэтому разумное использование индексов может ускорить запрос данных. Однако индексы не всегда улучшают производительность системы, индексные таблицы должны занимать больше места в базе данных, и та же команда на изменение и удаление данных занимает больше времени на работу и поддержание индекса.
Поэтому мы должны использовать индекс разумно и своевременно обновлять его, чтобы убрать неоптимальный индекс.

Классификация индексов

Указатель похож на оглавление перед китайским словаром, и вы можете быстро найти нужное слово по пиньинь или заглавной букве.
UNIQUE: Индексное значение каждой строки уникально (создаётся уникальное ограничение, и система автоматически создаёт уникальный индекс).
Индекс первичного ключа: Столбец первичного ключа, определяемый при создании таблицы, автоматически создаёт индекс первичного ключа и обладает уникальными характеристиками.
КЛАСТЕРИЗОВАННЫЕ: Кластерные индексы эквивалентны использованию пиньинь-поиска в словаре, потому что кластерный индекс хранит физически непрерывные записи, то есть пиньинь a должен следовать b.
НЕКЛАСТЕРИЗОВАННЫЕ: НЕКЛАСТЕРИЗОВАННЫЕ индексы эквивалентны использованию словарных радикалов для поиска, некластеризованные индексы логически непрерывны, а физическое хранение не является смежным.
Кластерный индекс может содержать только одну таблицу в таблице, тогда как некластерный индекс может содержать более одной таблицы в таблице.

Какие поля нужно индексировать

1. Первичный и внешний ключи таблицы должны иметь индекс
2. Таблицы с более чем 300 данными должны иметь индекс
3. Таблицы, которые часто связаны с другими таблицами, должны индексироваться на связанных полях
4. Поля, часто встречающиеся в клаузе Where, особенно в больших таблицах, должны индексироваться
5. Поля, которые часто сортируются или группируются (то есть выполняют операции GROUP BY или ORDER BY), должны индексироваться
6. Индекс должен строиться на высокоселективных полях
7. Индекс должен строиться на небольших полях, для больших текстовых полей или даже ультрадлинных полей, не строить индексы и использовать целые числа как можно более ключевые значения, поскольку целые числа обеспечивают наибольшую скорость доступа
8. Создание составных индексов требует тщательного анализа; Попробуйте использовать однополевые индексы вместо этого
9. Таблицы, часто выполняющие обработку данных, не должны индексироваться слишком сильно
10. Удалять бесполезные индексы, чтобы избежать негативного влияния на план выполнения

Недостаток слишком большого количества индексов

1. Пространство для хранения станет больше, и каждый индекс нужно будет хранить в пространстве
2. Если существует много некластерных индексов, после изменения кластерного индекса все некластерные индексы изменятся соответственно
3. Слишком большое количество индексов приведёт к увеличению числа комбинаций, которые нужно оценивать в процессе оптимизации оптимизатора, увеличивая время запроса
4. Каждый индекс содержит статистическую информацию, и чем больше индексов, тем больше информации, что увеличивает время запроса
5. Накладные расходы обновления: после изменения данных и изменений множества столбцов могут привести к изменению нескольких индексов, что приведёт к замедлению обновления, удаления и вставки








Предыдущий:Видеоклип с сильным подростковым сопровождением
Следующий:C# получает текущую букву системного диска, системную директорию, рабочий стол и так далее
 Хозяин| Опубликовано 27.12.2020 11:56:05 |
CREATE INDEX PersonIndex ON Название таблицы (Имя поля)

DROP INDEX PersonIndex ON название таблицы
 Хозяин| Опубликовано 24.02.2021 15:16:27 |
Когда поле Test таблицы Itsvse не имеет индекса, оно добавляется

Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com