One of the reasons I believe in the value of
empirical research is that artificial test cases can
mislead the reader into believing that the test-case
"proves" something about Oracle behavior.
Artificial test cases prove nothing except the
results for the specific version, release, platform
and operating system. It is a misconception
that a "proof" by itself proves very little and you
cannot be extrapolated to the entire universe of
Oracle databases.That's why a wide breadth of
real-world experience is more important than "lab"
research on Oracle behavior, using artificial data
on contrived systems. Let's take a closer look
and understand why artificial test cases cannot be
generalized to the universe of Oracle databases.
Using artificial test cases is cumbersome and time
consuming. This artificial test case proof
Validation of Sort Sizes in an Oracle10g Database
required over 200 pages of listings to prove sort
area behavior on one specific platform and release.
A comprehensive artificial test all all releases
would require over 10,000 pages of listings.
Turning-on specialized features
Oracle has lots of specialized features, each
offered for specialized types of Oracle databases.
Examples might include the object-relational
(ORDBMS) features of Oracle which radically
challenge the accepted principles of object storage.
For another example, the Oracle7
Multi-threaded server changes Oracle PGA
management and using the MTS will invalidate any
artificial test cases using the default installation
of Oracle.
Differences in platforms and
releases
From Oracle6 to Oracle 10g we have seen more than
a dozen releases of Oracle, each more powerful than
the one before, and each with very different
behaviors. When we factor-in the varied
hardware platforms and operating systems, and
specific patches, there are thousands of Oracles,
each with platform-specific behaviors. |