Database workloads are very diverse. While most database servers are lightly loaded, larger database
workloads can be resource-intensive, exhibiting high I/O rates or consuming large amounts of memory. With improvements in virtualization technology and hardware, even servers running large database workloads run well in virtual machines. Servers running Microsoft's SQL Server, among the top database server platforms in the industry today, are no exception.
An important consideration in SQL Server consolidation scenarios is application performance when packing multiple virtual machines on a single hardware platform. Application performance in virtual machines should continue to meet or exceed required service levels. That is to say, the virtual platform should:
- Be scalable.
- Ensure that all virtual machines get resources in proportion to their load levels up to specified resource limits.
- Provide performance isolation for each virtual machine running on a host.
- Ensure that the overall load of a host will have minimal impact on the performance of applications running in individual virtual machines on that host.
We recently published a white paper, "SQL Server Workload Consolidation," that demonstrates the ability of VMware® ESX 3.5 to scale while guaranteeing fairness and isolation under a demanding SQL Server load.
We recently posted the results of some experiments running VMmark across a 4-server cluster using DRS (here and here) that demonstrate the power and flexibility of VMware Infrastructure. We have used the same methodology and the same hardware to measure the performance impact of DPM (there wasn't any) as well as the power savings (it was substantial). One of our marketing guys put together a pretty neat video. If you haven't seen it yet, check it out. And yes, I too wish my 8-hour workday only lasted 2.5 minutes.
I am fascinated studying the ripple effects seen in overall system performance caused by tuning a subset of workloads in a virtualized environment. Our partners at Sun have provided a textbook case by publishing two VMmark 1.1 results on the Sun Fire X4240 last month. The scores were 7.92 @ 6 tiles and 8.07 @ 6 tiles, roughly a 2% difference. The higher result was run using large pages for the javaserver workload while the lower result did not have large pages enabled. (Look here for instructions on how to allow large page usage on Windows 2003.) Using large pages allows the six VMmark javaserver workloads in the benchmark test to consume significantly fewer CPU resources while achieving their desired performance. This CPU savings frees additional resources to be shared by the other thirty workloads, resulting in a higher overall score. Thanks to our partners at Sun for sharing the data.
Our partners at Unisys recently published their debut VMmark result of 21.96 @ 15 tiles using an ES7000 Model 7405R G1. This is a 32-core, 8-socket system. You can find the details at the ever-growing VMmark results page.