Realizing Performance Improvements Using 64-bit SQL Server 2008
Published: March 2011
System performance has improved significantly after migrating to 64-bit SQL Server 2008 on the Windows Server 2008 operating system. The improvement has helped Microsoft IT Business Intelligence Engineering increase supportability and reliability of this internal system. It has also helped gain back customer confidence by enabling businesses to meet their goals by providing the most up-to-date and accurate data.
Products & Technologies
Article, 102 KB, Microsoft Word file
Microsoft SQL Server 2008 administrators and backup operators
The Microsoft IT Business Intelligence (BI) Engineering team is responsible for maintaining a system that helps provide an integrated view of customer and business information to numerous groups across Microsoft. This application consolidates information reported from more than 45 sources, and provides data to over 100 systems.
Internal Microsoft marketing teams access the application for email, phone, and address data for generating and maintaining marketing lists. Additionally, sales teams use the application to access revenue data to maintain and attribute revenue to specific sales teams.
The engineering team also handles enhancements to the system based on user requests.
The application had been based on a 32-bit version of SQL Server® 2005 running on the Windows Server® 2003 operating system. However, the engineering team wanted to upgrade the system for four reasons:
- To address availability and performance issues.
- To reduce the number of huge extracts.
- To solve memory contention issues.
- To gain the ability to handle run-away database queries.
To address these challenges, the team migrated the system from 32-bit SQL Server 2005 running on Windows Server 2003 to 64-bit SQL Server 2008 running on Windows Server 2008. Being an early adopter of SQL Server 2008 provided the opportunity to learn firsthand how some of the new and enhanced features can a have significant impact on day-to-day operations. Some of the key benefits observed since the adoption are mentioned below.
The Resource Governor feature in SQL Server 2008 enables administrators to control and allocate CPU and memory resources to high-priority applications. This capability helps maintain predictable performance, and assists in preventing resource-intensive applications or processes from adversely affecting performance. The system is a 3.5 TB operational data store that supports over 100 downstream applications. On this system, both Extract, Transform, and Load (ETL) processing and extracts by downstream systems execute simultaneously, due to which users observed sluggishness in the ETL process whenever resources were blocked by major downstream extractions.
Implementing workload groups helped the system ensure that dedicated bandwidth was reserved for ETL processing. This reserved bandwidth resulted in a 300 percent performance improvement in one of their major downstream systems extract task. Using workload groups resulted in the ability to stop intelli-sense requests to the production server from originating at the SQL Server Management Studio (SSMS).This used to previously affect ETL processing.
Change Data Capture
The Change Data Capture (CDC) feature in SQL Server 2008 collects all changes in their entirety, and places the relevant information in change tables. This feature maintains cross-table consistency and works across schema changes. BI Engineering has enabled CDC to track changes (insert, update, and delete) to the data in the tables exposed to the downstream systems via a custom API. By adopting CDC, downstream systems are now easily able to identify deleted data in the system without having to rely on custom logic that involves full-pull from the system followed by a row-by-row comparison and deletion.
CDC adoption has also facilitated the flexibility to support delta pull logic on any table without affecting existing code. Extract from a table that did not carry changed date parameters initially required 12 hours for a complete pull, but now takes barely 5 minutes to pull only changed data. This is a huge benefit to systems, and results in effective utilization of network resources
With SQL Server 2008 Backup Compression, the compression is performed in memory before the data is transferred to disk, enabling backups to run faster because of the reduced disk I/O needed. Backup compression also reduces the storage required to keep backups online, reducing the overall cost of keeping disk-based backups. Tests have revealed that the Backup Compression feature in SQL Server 2008 provides 3-to-1 compression, which has correspondingly reduced the disk space needed to support backups.
SQL Server 2008 has enhanced the efficiency of using TABLOCK inserts, resulting in faster data loads. The table locking of TABLOCK provides faster loading compared to using row locking. Implementing the TABLOCK feature has helped halve the time it takes to populate working tables (used for join operations.) This is one of the most used functionalities in downstream systems.
Previously, the BI system was running on SQL Server 2005 on a 32-bit version of Windows Server 2003 SP2 with Physical Address Extensions (PAE) and Address Windowing Extensions (AWE) enabled. AWE provided a method to use more memory, but the imposition of overhead and added initialization time led to weaker overall performance. Also, the additional memory addressability with AWE is available only to the SQL Server's data buffers and not to other memory-consuming database operations such as caching query plans, sorting, indexing, joins, or for storing user connection information.
With 64-bit SQL Server 2008, the system started taking advantage of large, directly-addressable memory space without any of the limitations previously encountered on the 32-bit system. Moving to 64-bit provided greater processing capacity by reducing the penalties of I/O latency by utilizing more memory than traditional 32-bit systems.
Year-end ETL processing improved by 300 percent, which enabled completing the annual roll much ahead of schedule. This helped finance systems meet their targets ahead of time. During the previous year-roll—while on a 32-bit environment—BI Engineering processed 6.5 million records in 48 hours. This year—using the 64-bit environment—13.5 million records were processed in less than 43 hours.
The Microsoft IT BI Engineering team maintains an application that provides an integrated view of customer and business information to various Microsoft groups. The team sought to upgrade the application and alleviate availability, performance, and other challenges they encountered on the 32-bit version of SQL Server 2005.
After migrating the application to 64-bit SQL Server 2008 on the Windows Server 2008 operating system, the team witnessed a dramatic performance improvement. For example, year-end ETL processing improved by 300 percent, enabling finance teams to meet their targets faster.
For More Information
For more information about Microsoft products or services, call the Microsoft Sales Information Center at (800) 426-9400. In Canada, call the Microsoft Canada Order Centre at (800) 933-4750. Outside the 50 United States and Canada, please contact your local Microsoft subsidiary. To access information via the World Wide Web, go to:
This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY. Microsoft, Windows, SQL Server, and Windows Server are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. The names of actual companies and products mentioned herein may be the trademarks of their respective owners.