Quantcast
Channel: SQL.ru: Microsoft SQL Server
Viewing all articles
Browse latest Browse all 7251

Переход с использования GUID на Int

$
0
0
День добрый!
Существует база в которой порядка 300 таблиц.
Большинство таблиц такого вида:
CREATE TABLE MyTable (
	[Local_Id] [int] IDENTITY(1, 1) NOT NULL
	,[GUID_Id] [uniqueidentifier] NOT NULL
	,[Col_1] [int] NOT NULL
	,[Col_2] [int] NOT NULL
	,[Col_3] [int] NOT NULL
	,[Col_4] [int] NOT NULL CONSTRAINT [pk_MyTable_c_Local_Id] PRIMARY KEY CLUSTERED ([Local_Id])
	)

CREATE NONCLUSTERED INDEX [IX_MyTable_GUID_Id] ON MyTable ([GUID_Id] ASC)


Апплицация вносит данные в GUID_Id при помощи NEWSEQUENTIALID ()

Причина историческая, никто толком объяснить не может почему используются GUID
Соответственно практически весь код использует GUID_id для связок между данными.

Для повышения производительности думают отказаться от использования GUID-ов и перейти на использование Local_Id, т.е. прийдетется изменить много кода, тесты и т.п.

Есть какие-то предложения как более-менее эффективно определить разницу и стоит ли вообще этим заниматься?

Спасибо!

Viewing all articles
Browse latest Browse all 7251

Trending Articles