Рекомендуем, 2024

Выбор редакции

Разница между кластеризованным и некластеризованным индексом

Кластерный и некластеризованный индекс - это типы одноуровневого индекса упорядочения, где кластерный индекс определяет, как данные хранятся в строках таблицы. С другой стороны, некластеризованный индекс хранит данные в одном месте, а индексы хранятся в другом месте. Кроме того, каждая таблица может иметь только один кластерный индекс. В отличие от этого, в случае некластеризованного индекса таблица может иметь несколько некластеризованных индексов.

Индексы необходимы для эффективного обеспечения ограничений целостности и эффективной обработки запросов и транзакций. Они созданы на таблицах и представлениях. Например, индексы, используемые в книгах, которые облегчают пользователю быстрый доступ к содержанию книги, аналогично, у нас есть индексы в SQL.

Сравнительная таблица

Основа для сравненияКластерный индексНекластерный индекс
основнойОпределяет порядок хранения строк в таблице в целом.Определяет порядок хранения строк в таблице с помощью отдельной физической структуры.
Количество индексов, разрешенных на одну таблицуТолько один кластерный индексНесколько некластеризованных индексов
Доступ к даннымБыстрееБолее медленный по сравнению с кластерным индексом
Дополнительное дисковое пространствоНе нужноТребуется хранить индексы отдельно

Определение кластерного индекса

Кластерный индекс в основном используется для упорядочения строк в таблице. Таблица может иметь только один кластеризованный индекс, поскольку строки в таблице могут быть отсортированы только в одном порядке, но существуют способы создания составного кластерного индекса . Столбцы включены в кластеризованный индекс, и логический или индексированный порядок значений ключей такой же, как физически сохраненный порядок соответствующих строк. Если для данных нет кластеризованного индекса, он сохраняется в куче .

Доступ к записи в куче занимает очень много времени, где каждая запись в таблице сканируется для доступа к нужным данным. При сканировании таблицы не было возможности узнать, есть ли еще доступные совпадения или нет. Итак, этот метод был очень неэффективным.

При использовании кластерного индекса доступ к данным более быстрый и систематический, если таблица организована в некотором порядке. Это определяется в поле порядка таблицы. Его поисковый ключ используется для указания последовательного расположения файла или таблицы. Кластерный индекс создается автоматически, когда для таблицы определен первичный ключ .

Определение некластеризованного индекса

Некластеризованный индекс хранит данные в одном месте, а индексы в другом месте, и индекс будет иметь указатели на место хранения данных. Таблица может иметь несколько некластеризованных индексов, поскольку индекс в некластеризованном индексе хранится в другом месте. Например, книга может иметь более одного индекса, один в начале, который показывает содержание книги по единицам, и другой индекс в конце, который показывает индекс терминов в алфавитном порядке.

Он определяется в неупорядоченном поле таблицы. Некластеризованный индекс может повысить производительность запросов, использующих ключи, отличные от первичных ключей. Некластеризованный индекс создается автоматически, когда для таблицы определен уникальный ключ .

Ключевые различия между кластеризованным и некластеризованным индексом

  1. Номер кластеризованного индекса, который может иметь таблица, равен только одному. В то время как таблица может иметь несколько некластеризованных индексов.
  2. Кластерный индекс работает быстрее, чем некластеризованный, потому что некластеризованный индекс должен ссылаться на базовую таблицу. Наоборот, это не относится к кластерному индексу.
  3. В некластеризованном индексе индекс хранится в отдельном месте, которое требует дополнительного пространства для хранения. В отличие от этого, кластерный индекс хранит данные базовой таблицы в том же физическом порядке, что и логический порядок индекса, поэтому он не требует дополнительного места для хранения.

Заключение

Кластерный индекс - это способ хранения данных в строках таблицы в определенном порядке. Таким образом, при поиске нужных данных затрагивается только соответствующая строка, которая содержит данные и представляется как выходные данные. С другой стороны, некластеризованный индекс находится в физически отдельной структуре, которая ссылается на базовые данные при поиске. Некластеризованная структура может иметь другой порядок сортировки.

Top