If you've been following SQL Server 7.0's release and early news about it, the Oracle challenge to SQL Server 7.0 is probably nothing new to you. If you haven't heard about it, here are the specifics: Oracle offers $1 million to anyone, Microsoft employees included, who can show that SQL Server 7.0 is not 100 times slower than Oracle when performing one specific TPC-D benchmark.
The challenge seems dramatic enough. It implies that Oracle is more than 100 times faster than a comparably configured SQL Server 7.0 system and, moreover, that Oracle's design is so superior that even Microsoft's internal SQL Server experts can't make SQL Server come close.
Oracle enjoys the reputation of achieving the highest database marks on the existing TPC benchmarks, but is it really 100 times faster than SQL Server? As with most claims in the computer industry—especially where benchmarks are concerned—there's more to the Oracle challenge than first meets the eye.
Oracle bases its challenge on one of the TPC-D benchmarks, a decision-support type of query that asks a question such as, "How much of last year's revenue was shipped nationally versus internationally?" This question is the fifth query in the TPC-D benchmark, and the database must perform this query over the 1TB TPC-D benchmarking database.
This query seems an ideal application for SQL Server 7.0's new OLAP Services, and it is—but there's the catch. The rules of this TPC-D benchmark don't allow the use of SQL Server's OLAP Services. If you're familiar with OLAP, you know that data warehousing applications get their tremendous query performance by aggregating the database. Aggregation creates a summary of information that can satisfy a query without the overhead involved in interrogating the base tables where the original data is stored.
But Oracle can take advantage of an Oracle 8i feature that performs a preaggregation of the database, and the TPC-D benchmark rules allow preaggregation. The ability to satisfy this query using aggregations gives Oracle a tremendous advantage over SQL Server 7.0 if SQL Server 7.0 can't use its own OLAP services to get the same advantages.
This situation demonstrates how benchmarks can give false comparisons. Although I don't doubt that Oracle's challenge adheres to the letter of the benchmark, I really doubt that it follows the intent. Does the Oracle challenge represent a good marketing ploy? Of that, have no doubt. Is Oracle really 100 times faster than SQL Server 7.0? Well, you can decide what is a lie, what is a damn lie, and what is a benchmark.