Какова цель последовательного уникального идентификатора в ПК MS SQL?

Я знаю, что первичные ключи, основанные на Guids, не имеют лучшей производительности (из-за фрагментации), но они глобально уникальны и допускают сценарии репликации.

С другой стороны, интегральные идентификаторы имеют большую производительность за счет масштабируемости.

Но в каких сценариях кто-то захочет использовать последовательный уникальный идентификатор в качестве первичного ключа? Я думаю, что это превосходит назначение GUID, но все же время от времени я вижу упоминания о последовательностях.

Что мне здесь не хватает?

ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
2
0
1 218
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

То, что обычно известно как последовательные направляющие в SQL Server 2005 (генерируемые функцией NEWSEQUENTIALID ()), является попыткой преодолеть проблемы с обычными направляющими.

Они являются по-прежнему универсально уникальны, но также всегда восходящие. Это означает, что их можно использовать для репликации. и имеет гораздо лучшую производительность вставки, чем традиционные GUID.

Единственным недостатком является то, что они не являются «безопасными», потому что можно угадать следующий последовательный guid.

http://msdn.microsoft.com/en-us/library/ms189786.aspx

Просто небольшой момент. Они почти наверняка уникальны во всем мире. Они уникальны на конкретном компьютере. Если на машине нет сетевой карты, они могут стать неуникальными (хотя этот сценарий маловероятен для SQL Server).

BlackWasp 16.03.2009 00:53

Использование последовательных направляющих гарантирует, что вы всегда будете использовать значение, превышающее последнее значение. Для индексированного поля это важно. Вместо случайной вставки по всему спектру вы всегда вставляете в конце последней «страницы» данных, что приводит к значительному сокращению разбиения страниц, особенно в случае, когда столбец uniqueidentifier также является вашим кластеризованным индексом.

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