Организация индекса

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

Как и в ФС, в СУБД для доступа к данным по ключу с целью уменьшения времени на осуществление такого доступа применяется индексирование. Для объектов БД «таблица» (Table) или «представление» (View) могут быть организованы следующие типы индексов.

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

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

Пример схемы реализации кластеризованного индекса в Microsoft SQL:

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

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

Некластеризованный индекс

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

Указатель из строки индекса в некластеризованном индексе, который указывает на строку данных, называется указателем строки. Структура указателя строки зависит от того, хранятся ли страницы данных в куче или в кластеризованной таблице. Для кучи указатель строки является указателем на строку. Для кластеризованной таблицы указатель строки данных соответствует ключевому атрибуту(ам), по которому организован кластеризованный индекс.

Пример схемы реализации кластеризованного индекса в Microsoft SQL:

Учебник / Учебное пособие Раздел Страницы
Карпова Т.С. Базы данных: модели, разработка, реализация. - СПб.: Питер, 2001.- 304 с.; ил. Глава 9 162-197

Тема 3. Информационно-логическое моделирование в разработке баз данных

Лекция №3. Моделирование предметной области

В рамках данной лекции рассматриваются нижеследующие вопросы:

· Модель предметной области.

· Модель«сущность-связь». ER- диаграммы.

· Представление сущности. Ключевые и неключевые атрибуты. Ключи-кандидаты. NULL-значения.

· Связи. Атрибуты связей. Зависимые и независимые сущности. Внешние ключи.

· Ограничения целостности. Поддержка целостности. Категорная и ссылочная целостность.

· Поддержка целостности при выполнении Insert, Replace(Update), Delete (IRD).

Модели предметной области создается на этапе анализа требований к базе данных и строится независимо от выбираемой модели данных (сетевой, иерархической, реляционной, объектно-ориентированной, многомерной и т.д.), поддерживаемой СУБД, модели вычислений, программно-аппаратной платформы для базы данных. Модель предметной области в условной нотации представляет тот объект реального мира, для которого разрабатывается БД, и служит основой для последующих этапов проектирования и реализации базы данных.

Примерами нотаций для представления структур баз данных могут быть нотация UML унифицированного языка моделирования или нотация языка IDEF1X для разработки реляционных баз данных методологии SADT структурного анализа и проектирования. Нотация IDEF1X стандартизована. Установленные стандарты позволяют избежать различной трактовки построенной модели.

Одним из подходов к моделированию реляционных баз данных является модель сущность-связь (ER-модель), или ER-диаграмма Ее удобно предоставлять в графической нотации языка IDEF1X. По этой нотации сущности и связи представляются прямоугольниками и линиями. ER-модель удобна при проектировании баз данных, архитектур компьютерных приложений. С её помощью можно выделить сущности и их атрибуты, а также атрибуты связей, которые могут устанавливаться между этими сущностями. Существует ряд программных средств (например, ERWin), которые позволяют высокоуровневое проектирование, документирование разрабатываемых баз данных на уровне представлений логической и физической моделей.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: