2017-05-29 2 views
0

Wir haben Tabelle mit mehr als 100.000 neue hinzugefügt jeden Tag (SQL Server 2008).Komprimieren nvarchar (500)

Tabelle hat 10 Felder, aber einer von ihnen ist am schwersten
- seine Einsparung Beschreibung des Produkts 500chars. und sein Set jetzt als nvarchar (500). die Daten in diesem Bereich gespeichert ist nicht nur in Englisch, kann in Russisch, Hebräisch, Arabisch, Chinesisch etc.

Wir können dieses Feld nicht loswerden, gibt es eine Möglichkeit, den Inhalt zu komprimieren und kleinere Größe als nvarchar verwenden (500)

+0

Sie müssen 500 Zeichen für dieses Feld zulassen, aber wie viele dieser Zeichen werden normalerweise verwendet? –

Antwort

0

Sie können die gesamte Tabelle (Clustered-Index) oder den Index selbst komprimieren. Hier ist, wie:

ALTER TABLE Production.TransactionHistory REBUILD PARTITION = ALL 
WITH (DATA_COMPRESSION = PAGE); 

ALTER TABLE Production.TransactionHistory REBUILD PARTITION = ALL 
WITH (DATA_COMPRESSION = ROW); 

Sie diese https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-estimate-data-compression-savings-transact-sql kann den Raum mit ROW oder PAGE-Komprimierung gespeichert abzuschätzen.