Структура таблиц и индексов



 

SQL Server 2000 поддерживает индексы представлений. Первый индекс представления должен быть кластерным. Во время исполнения оператора CREATE INDEX для представления результирующий набор для этого представления сохраняется в базе данных, при этом используется структура, аналогичная структуре таблицы с кластерным индексом.

Строки с данными каждой таблицы или индексированного представления хранится в наборе 8-килобайтных страниц данных. У каждой страницы данных есть 96-байтный заголовок, который содержит системную информацию, например идентификатор таблицы, которой принадлежит страница. Если используются страницы, связанные в список, то в заголовке страницы также находятся указатели на предыдущую и последующую страницы, В конце страницы располагается таблица смешений строк. Остаток страницы заполнен строками данных, как показано на рис. 1-5.

 

Рис. 1*5. Организация страниц данных

 

Для организации страниц данных в таблицах SQL Server 2000 применяется один из двух методов: кластерные таблицы или кучи.

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

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

Страницы данных не организованы в связный список.

Структура индексированных представлений аналогична структуре кластерных таблиц.

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

 

 


Дата добавления: 2015-12-17; просмотров: 17; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!