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

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

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

Видео: Разница между кластерным и некластерным индексом
Видео: 3. Кластерные и некластерные индексы 2024, Июль
Anonim

Кластерный и некластерный индекс

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

1. Индексы B-дерева

2. Битовые индексы

3. Функциональные индексы

4. Индексы с обратным ключом

5. Индексы кластера B-дерева

Что такое некластерный индекс?

Из приведенных выше типов индексов следующие являются некластеризованными индексами.

• Индекс B-дерева

• Битовый индекс

• Функциональный указатель

• Индексы с обратным ключом

Индексы B-tree являются наиболее широко используемым типом индексов баз данных. Если в базе данных используется команда CREATE INDEX без указания типа, сервер Oracle создает индекс b-tree. Когда индекс B-дерева создается для определенного столбца, сервер oracle сохраняет значения столбца и сохраняет ссылку на фактическую строку таблицы.

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

Функциональные индексы взяты из Oracle 8i. Здесь функция используется в индексированном столбце. Поэтому в функциональном индексе данные столбцов не сортируются обычным образом. Он сортирует значения столбцов после применения функции. Это очень полезно, когда используется функция WHERE close запроса select.

Индексы с обратным ключом - очень интересный тип индексов. Предположим, что столбец содержит множество уникальных строковых данных, таких как «cityA», «cityB», «cityC» и т. д. Все значения имеют шаблон. Первые четыре символа одинаковы, а следующие части изменены. Поэтому, когда для этого столбца создается ключевой индекс REVERSE, Oracle переворачивает строку и восстанавливает ее в индексе b-дерева.

Вышеупомянутые типы индексов НЕ КЛАСТЕРИРОВАНЫ. Это означает, что индексированные данные хранятся вне таблицы, а отсортированная ссылка на таблицу сохраняется.

Что такое кластерный индекс?

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

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

1. Таблица может иметь только один кластеризованный индекс, но в одной таблице может быть до 249 некластеризованных индексов.

2. Кластеризованный индекс создается автоматически при создании первичного ключа, а некластеризованный индекс создается при создании уникального ключа.

3. Логический порядок кластеризованного индекса соответствует физическому порядку данных таблицы, но в некластеризованных индексах это не так.

Рекомендуемые: