Benchmark Software for Microsoft SQL Server
By Chris Miller
on 17 August 2000
| 0 Comments
| Tags: Benchmarks
Alexzander writes "Good morning, can You help me at this topic: does anybody know any benchmarking software for Microsoft SQL Server 7.0? Software, which show relative performance params changing, after tuning/changing SQL Server configuration"
Well, Alexzander, that's a very good question. How do you know if the changes you just made to your configuration helped or hurt your server? There really aren't any benchmarks like that for a couple of reasons. First of all, given the number of different things the benchmark would need to check for, it wouldn't really be practical to write a single benchmark for everything. Most of the configuration changes that get made are to customize SQL Server to the types of queries that are run in a specific environment. So building a single tool to do these tasks would be next to impossible. What I've done in the past is build large query sets into text files that contain a "typical" mix of the queries run in a specific environment. There are a variety of ways to do this, I usually use a weighted random number generator and a lot of perl. Then watch perfmon and see what happens with disk IO and processor time.
A complete benchmark kit would probably need to generate the SQL for the test so it would be custom enough to match any given situation, plus it would need to interface with performance monitor to check and see how well the server is running (if a query now takes 1 second instead of 10 seconds, but it uses all of the CPU time on the box and locks every table in the database, is it really an improvement?).
Now, that said, you're probably wondering what the second reason is that there isn't a good SQL Server benchmark program. Here it is, from the SQL Server 7 license agreement:
Performance or Benchmark Testing. You may not disclose the results of any benchmark test of either the Server Software or Client Software for Microsoft SQL Server, Microsoft Exchange Server or Microsoft Proxy Server to any third party without Microsoft's prior written approval.
So, let's say you did have a benchmark program. You couldn't tell anyone how well your server did without written approval from "the man". The legal ramifications of even building such a tool would be interesting.