Если у меня есть столбец таблицы с данными и я создаю индекс для этого столбца, будет ли индекс занимать столько же места на диске, что и сам столбец?
Мне интересно, потому что я пытаюсь понять, действительно ли b-деревья хранят копии данных столбца в конечных узлах или они как-то указывают на это?
Извините, если это будет "Java заменит XML?" добрый вопрос.
ОБНОВЛЕНИЕ:
создал таблицу без индекса с одним столбцом GUID, добавил 1M строк - 26MB
та же таблица с первичным ключом (кластеризованный индекс) - 25 МБ (еще меньше!), Размер индекса - 176 КБ
та же таблица с уникальным ключом (некластеризованный индекс) - 26 МБ , размер индекса - 27 МБ
Так что только некластеризованные индексы занимают столько же места, сколько сами данные.
Все измерения были выполнены в SQL Server 2005