SQL Server 2008 R2: Unicode Compression

by Admin 18. августа 2009 21:05

Компрессия данных появилась ещё в SQL Server 2008, но в версии SQL Server 2008 R2 её значительно улучшили над Unicode-символами.

Для примера запустим один и тот же скрипт на 2х инстансах 2008 и 2008R2 (эксперементы ставим над системной таблицей dbo.spt_values базы данных master):

SELECT @@VERSION as Version
GO

USE master
GO

ALTER TABLE dbo.spt_values REBUILD WITH (data_compression = none)
GO

EXEC sp_spaceused 'dbo.spt_values';
GO

ALTER TABLE dbo.spt_values REBUILD  
WITH (data_compression = ROW)
GO

EXEC sp_spaceused 'dbo.spt_values';
GO

Результат на SQL Server 2008:

 

 

Результат на SQL Server 2008R2:

 

 

Но для большей наглядности улучшенной компрессии, создадим тестовую таблицу с повторяющимися символами (Кириллица в Юникоде)

SELECT @@VERSION as Version
GO

USE TempDB
GO

CREATE TABLE dbo.Test (val NVARCHAR(124)) WITH (data_compression = ROW)
GO

INSERT INTO dbo.Test
SELECT 'Я люблю пиво! Я люблю пиво! Я люблю пиво!:)))'
GO 100000

EXEC sp_spaceused 'dbo.Test';
GO

DROP TABLE dbo.Test

 

Результат на SQL Server 2008:

 

Результат на SQL Server 2008R2:

 

Более подробно читаем тут.

Tags: , ,

SQL Server

Добавить комментарий

  Country flag

biuquote
  • Комментарий
  • Предпросмотр
Loading