Должен ли последовательный столбец первичного ключа GUID быть кластерным индексом?

StackOverflow https://stackoverflow.com/questions/1757222

Вопрос

Цель использования последовательного GUID состоит в том, чтобы вы можете использовать кластерные индексы без высоких уровней фрагментации, которые обычно существовали бы в кластерном индексе, если бы это было обычным гидом, правильно?

Это было полезно?

Решение

Да вы правы.

Другие советы

Во-первых, для прояснения, первичный ключ и кластерный индекс представляют собой 2 отдельных и отличных вещей, то есть один не связан с другим (PKS может быть не классифицированными, кластерные индексы могут быть не PK).

Это дано, я думаю, что вы спрашиваете больше «следует ли использовать последовательный GUID в качестве кластерного индекса». Это загруженный вопрос, но Кимберли Трипп обсудила это Наверное, лучший из всех, кого я видел. Обратите внимание, что в статье относится к PK, но внутри статьи она ссылается на то, как рассмотрение применяется в основном к кластерному выбору индекса по сравнению с PK.

Предполагая, что вы уже решили использовать GUID в качестве ключа кластера (который может иметь или не иметь место), использование последовательного GUID, скорее всего, будет превосходным выбором для не последовательного GUID, однако, по крайней мере, 1 Сценарий, в котором может быть предпочтительным не последовательным GUID (хотя очень редкий, очень продвинутый сценарий, в котором вам придется в основном понять свою систему и SQL Server настолько хорошо, что вы не сомневаетесь, что это должно использоваться - было бы связано с Горячие точки на вашем устройстве хранения и распространение больших воделов записей в разных местах кластера).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top