SQL Server passed a significant performance milestone last week when Unisys published Transaction Processing Performance Council (TPC) TPC-C results for its 32-CPU ES7000 server running SQL Server 2000. This accomplishment represents the first time Microsoft has been involved in a TPC-C score for one server using more than 8 CPUs. The results put the company back on the list of top-10 TPC-C scores for single-server, nonclustered platforms. The Microsoft-Unisys score of 141,138 transactions per minute (tpmC) ranks ninth on the top-10 list and is more than double Microsoft's previous single-server best.
It will be many years before 32-CPU servers become commodity servers, so 32-CPU benchmarks might not be relevant to the problems you face today. Nevertheless, publishing 32-CPU TPC-C benchmarks is a necessary and significant step as Microsoft battles to gain mind-share in the enterprise database market.
You might have seen the recent Microsoft ad campaign about "enterprise agility." The ads maintain that the company has already mastered "abilities" such as reliability, scalability, and availability and that it's time to move on to the "agilities." What's an agility? In Microsoft parlance, agility is a software feature that lets you solve your business problems quickly and effectively. But people don't care about system agility until they've secured the basic enterprise building blocks of reliability, scalability, and availability. And for all practical purposes, customers will measure Microsoft's mastery of abilities against the system capabilities of high-end UNIX enterprise servers.
But has Microsoft really mastered the abilities? Perception can be more important than reality. Microsoft's technical skill at providing high levels of reliability, scalability, and availability is meaningless unless customers believe, or perceive, that the company has mastered the "ability battle." High-end benchmarks are important because they demonstrate that SQL Server Wintel solutions can compete against big-iron servers that run UNIX. I still hear people say that Windows can't scale beyond four processors, and most people assume the top-line limit is eight CPUs in one box. The reality is that SQL Server can effectively scale up to 32 processors. You might not need a 32-CPU server, but each new 32-CPU benchmark adds another layer of brick to the foundation of information that customers need before they can accept SQL Server as a viable candidate in the enterprise, no matter how many CPUs their enterprise servers use.
Can SQL Server scale as high as a UNIX database? No, but very few applications will ever need more horsepower than a 32-CPU SQL Server. SQL Server solutions can meet the reliability and scalability needs of almost any real-world business-computing scenario. Plenty of benchmarks and case studies back up that statement. But you might have noticed that I didn't offer my opinion about SQL Server's mastery of enterprise availability. I'll address that important topic in more detail in an upcoming commentary.