Micro Focus Frequent Contributor
Micro Focus Frequent Contributor
307 views

<(CM) Support tip>Unicode conversion increases DB size

Incident description :

After running DB Schema upgrade for CM/RM Database (ANSI type, SQL Server ) and DB Schema repair after the upgrade,  significant increase in data file size for the database can be observed.

Resolution                :

A small data file size increase (10% to 20% ) would be normal, however, if  near or over 100% increase is observed, then Administrator needs to review and find out whether or not Unicode conversion was run as part of the Schema repair ( was run after the DB upgrade).

Unicode conversion converts String field ( convers it from data type varchar to data type nvarchar ) , and potentially this can increase the string data stored in the field  by 100% ( byte length )  :

For the same string stored in varchar data type column, the character length remain unchanged after the conversion , but for the same length of character string,  varchar data type take 1 byte per character, and nvarchar types take 2 bytes per character, hence after the Unicode conversion,   a M byte length ( M characters, varchar )  will be converted to  2M bytes  (M  characters , nvarchar ),  which doubled the byte size for the string stored in the column. 

Reference : 

https://docs.microsoft.com/en-us/sql/t-sql/data-types/char-and-varchar-transact-sql

https://docs.microsoft.com/en-us/sql/t-sql/data-types/nchar-and-nvarchar-transact-sql

0 Replies
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.