SQL Clone
SQLServerCentral is supported by Redgate
Log in  ::  Register  ::  Not logged in

Three Engine Improvements in SQL Server 2008 R2

The upcoming (by May 2010) of SQL Server 2008 R2 has been primarily focused on enhancements in the BI area to support the upcoming releases of Office 2010 and SharePoint 2010. This left precious little development resources to devote to improvements to the basic relational database engine in SQL Server 2008.

So far, I have only found three significant Engine improvements in SQL Server 2008 R2, which I will list here.

1. Support for more than 64 processor cores (if you are running on Windows Server 2008 R2)

Microsoft did a lot of work on the scheduler in Windows Server 2008 R2 to make it more efficient and able to support more than 64 processor cores. SQL Server 2008 R2 will be able to take advantage of these improvements and support more than 64 processor cores. Even if you have a smaller machine with fewer than 64 processor cores, you should see some performance benefit from the scheduler improvements in Windows Server 2008 R2.

2. Support for Unicode Compression

SQL Server 2008 R2 Enterprise Edition will use Simple Compression Scheme for Unicode Data (SCSU) to compress Unicode data. This only works on NCHAR or NVARCHAR data types, not on NVARCHAR(MAX) or NTEXT (which is deprecated). It is enabled as part of Page or Row data compression. If you have an existing table or index that is using data compression in SQL Server 2008, you will have to rebuild the index(s) after you upgrade to SQL Server 2008 R2 to get Unicode Compression.    Microsoft’s Sunil Agarwal discusses Unicode Compression here and here

3. Improvements to the hashing algorithm used to calculate the lock hash value in the SQL Server Lock Manager

This improvement has the potential to dramatically improve concurrency in some very high volume situations by eliminating blocking caused by hash key collisions. Microsoft’s Juergen Thomas talks about this improvement here.

These three core Engine improvements have the potential to give you some nice performance improvements with very little development effort. The current Nehalem-EP (Xeon 5500 series), and upcoming Nehalem-EX processors are so much better than any processor from two-three years ago, and memory density is so much higher, that you may be able to make a compelling case for upgrading to new hardware and possibly doing some server consolidation, running on Windows Server 2008 R2 and SQL Server 2008 R2. Hopefully, this has given you some ammunition to help convince your company to consider this idea.


Posted by Steve Jones on 3 February 2010

Interesting list, especially #3. Reading about this from your previous blog made me wonder how often a hashing collision might have blocked a process when it wasn't necessary.

#2 is great as well, especially as it seems more and more people are developing apps that need Unicode.

Leave a Comment

Please register or log in to leave a comment.