«Стандартный» идеальный кластеризованный ключ - это что-то вроде INT IDENTITY
, который продолжает увеличиваться и становится узким.
Однако, если ваше основное использование для этой таблицы - перечисленный запрос, тогда я думаю, что кластеризованный индексна servername
имеет смысл.Вы увидите значительное увеличение скорости, если таблица будет большой, так как вы исключите дорогой поиск ключа / закладки, который выполняется на SELECT *
из некластеризованного индекса (если вы не include
все поля в таблице).
РЕДАКТИРОВАТЬ:
КМ указал, что это будет замедлять вставки, и это правда.Для этого сценария вы можете рассмотреть ключ с двумя полями на servername, idfield
, где idfield
- это INT Identity
.Это по-прежнему будет разрешать доступ только на основе servername
в вашем запросе, но будет вставлять новые записи в конце PER SERVER .У вас все еще будет фрагментация и переупорядочение.