Работают ли кластеризованные и некластеризованные индексы на B-Tree? Я читал, что кластеризованные индексы влияют на то, как данные физически хранятся в таблице, тогда как с некластеризованными индексами создается отдельная копия столбца, которая хранится в отсортированном порядке. Кроме того, Sql Server по умолчанию создает кластерные индексы по первичному ключу.
Означает ли это:
1) Некластеризованные индексы занимают больше места, чем кластеризованные индексы, поскольку отдельная копия столбца хранится в некластеризованном?
2) Как работает кластеризованный и некластеризованный индекс, когда у нас есть первичный ключ, основанный на двух столбцах, скажем... (имя ученика, оценки)?
3) Есть только 2 типа индексов? Если да, то что такое растровые индексы? Кажется, я не могу найти такой тип индекса в Sql Server Management Studio, но в моей книге по хранению данных все эти типы упоминаются.
4) Эффективно ли создание кластеризованного или некластеризованного индекса по первичному ключу?
5) Предположим, мы создаем кластеризованный индекс по имени, т.е. данные физически хранятся в отсортированном порядке по имени, после чего создается новая запись. Как новая запись найдет свое место в таблице?
Заранее спасибо :)