Индексы на базе В*-деревьев



бет3/10
Дата01.11.2022
өлшемі239.92 Kb.
#463783
1   2   3   4   5   6   7   8   9   10
Все лекции (1) (1) (1)

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


В стандартном В*-дереве значения ROWID хранятся в листовых узлах индекса. В битовом индексе каждый бит представляет собой один RO- WID. Если строка содержит определенное значение, соответствующий этой строке бит «поднят». Для преобразования номера бита в ROWID применяется функция отображения. В отличие от других типов, в битовых индексах представлены и строки, содержащие NULL в качестве значения ключа.
Для хранения битового индекса с небольшим числом значений требуется гораздо меньше места, чем для стандартного В*-дерева.
Возможности битовых индексов особенно важны при организации хранилищ данных, когда в каждом измерении хранилища встречается много одинаковых значений.

Индексы по ключам-функциям


Индексы no ключам-функциям появились в версии Oracle8i. Такой индекс похож на стандартное В*-дерево или на битовый индекс, только значением ключа является результат вычисления SQL-функции, а не значение, хранящееся в столбце (или в нескольких столбцах).
Этот механизм еще полезнее, если вы создаете собственные функции. Можно написать очень сложную функцию, а потом построить на ее основе индекс и тем самым кардинально повысить производительность запросов, в которых эта функция используется.

Невидимые индексы


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


Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   10




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет