2011-01-06 3 views

ответ

18

1. Как было отмечено here:.

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

0

1.

Хотя есть определенные причины для этого, это может показаться немного странным, что только один кластерный индекс допускается. Тот факт, что кластерный индекс сортирует данные внутри страны, на самом деле не объясняет причину наличия только одного такого индекса, поскольку некластеризованные индексы сортируются точно так же, как кластерные. Некластеризованные индексы могут включать в себя все данные таблицы таким же образом, что и кластерный. Поэтому, по крайней мере, в некоторых случаях было бы вполне разумно создать несколько «кластеризованных» индексов или просто полностью отказаться от различия. Но SQL Server не позволит вам создавать более одного.

+0

Это не мое понимание. Кластеризованный индекс, по ссылке Джо, относится к фактическому порядку хранения. Бессмысленно думать, что вы могли бы одинаково упорядочивать данные в двух разных порядках ... Скорее, вы заказывали бы один, затем другой ... следовательно, кластеризованные индексы. РЕДАКТОР: Хотя я думаю, что кто бы ни опустил тебя, был немного суровым. – Matthew

+0

@Matthew: «Нелепо» думать о том, что одни и те же данные сортируются в разных порядках. Это именно то, что происходит, если вы создаете два некластеризованных индекса по одному и тому же набору столбцов - или даже более того, если вы включаете дополнительные столбцы в некластеризованный индекс, используя предложение INCLUDE. Я также хотел бы знать, почему я был ниспослан. – sqlvogel

+0

Нет, два некластеризованных индекса создают «карты» для быстрого поиска элементов данных на физическом хранилище ... они не меняются * где * выделены биты. Отнесите его к физическим бумагам в ящике для подачи документов ... у вас может быть система дерева, чтобы быстро найти любую бумагу, но бумаги все еще хранятся только в одном физическом порядке. Это похоже на то, что медленная производительность INSERT несекретного GUID ... каждый случайный GUID заставляет повторно сортировать все записи. – Matthew

5

Для SQL Server 2005: 1 кластерного индекса + 249 Некластеризованный Index = 250 Index

Для SQL Server 2008: 1 кластерный индекс + 999 Некластеризованный Index = 1000 Индекс

Смежные вопросы