Коллеги,
поставили задачу оптимизировать таблицу хранения логов в которой 2.5 млрд строк.
Первый этап - изменить поля Method на MethodID и ServerName на ServerID - оба поля tinyint, структура исходной талицы:
Есть таблица: tb_Framework_Servers(ServerID tinyint, Servername varchar(32)) подготовленная заранее - содержит 68 записей
Сначала делаю ALTER TABLE ADD ServerID tinyint
затем запустил:
update log_HttpRequest
Set log_HttpRequest.ServerID = tb_Framework_Servers.ServerID
from tb_Framework_Servers
where log_HttpRequest.ServerName = tb_Framework_Servers.ServerName
Выполняется уже более 5 часов ((
Есть мысли как сделать быстрее?
поставили задачу оптимизировать таблицу хранения логов в которой 2.5 млрд строк.
Первый этап - изменить поля Method на MethodID и ServerName на ServerID - оба поля tinyint, структура исходной талицы:
CREATE TABLE [dbo].[log_HttpRequest]( [id] [bigint] NOT NULL, [Method] [varchar](16) NOT NULL, [RefererId] [bigint] NULL, [UriID] [bigint] NOT NULL, [UserAgentId] [bigint] NOT NULL, [UserID] [bigint] NULL, [SessionID] [bigint] NULL, [AspSessionID] [varchar](32) NULL, [TimeStamp] [datetime] NOT NULL, [ProcessTime] [int] NOT NULL, [ServerName] [varchar](32) NULL, [RequestTraceGUID] [uniqueidentifier] NULL, [ClientIP] [varbinary](16) NULL, [NSClientIP] [varbinary](16) NULL, [RawUriID] [bigint] NULL, [ActualUriId] [bigint] NULL, [RequestParameters] [varchar](1024) NULL, [SecurityTagId] [bigint] NULL, [ServerID] [tinyint] NULL, [MethodID] [tinyint] NULL, CONSTRAINT [PK_log_HttpRequest] PRIMARY KEY CLUSTERED ( [id] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = ON, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
Есть таблица: tb_Framework_Servers(ServerID tinyint, Servername varchar(32)) подготовленная заранее - содержит 68 записей
Сначала делаю ALTER TABLE ADD ServerID tinyint
затем запустил:
update log_HttpRequest
Set log_HttpRequest.ServerID = tb_Framework_Servers.ServerID
from tb_Framework_Servers
where log_HttpRequest.ServerName = tb_Framework_Servers.ServerName
Выполняется уже более 5 часов ((
Есть мысли как сделать быстрее?