[DB-SIG] Uittests for Python Database API Specification 2.0
Michael Scharf
Michael_Scharf@gmx.de
Wed, 27 Nov 2002 18:39:56 +0100
Gerhard Häring wrote:
> That'd mostly be useful for comparing different DB-API
> modules for the same database, as the DB-API wrappers have
> overhead, too. Sometimes quite considerable overhead. But
> for many applications, this is not a problem at all.
Well that's good. It would tests DB-engine + DB-API. That's
what you get as user anyway, and you somehow don't care
where exactly the performance bottleneck is. If there are
different DB-API's to choose, I think the tradeoff might be
speed for functionality. With a set of tests you can see
what's important for your application (thread safety, speed,
salability,...)
>>What's also interesting sometimes it the disk space (% of wasted disk
>>space given a data set) and (maximum) memory usage of a database.
>>Finally, installation size is important sometimes.
>
> These are all characteristica of the RDBMS used.
Indeed, but what matters most of the time is the TOTAL
performance. If a high speed DB-engine appears very slow
because of a bad DB-API implementation, testing the
DB-engine itself is not very helpful, if you want to use
it from python (and you depend on the DB-API).
> And unfortunately, it's hard to get such data, because it
> fall in the benchmark category. And the commercial RDMBS
> vendors are such losers that they all forbid publishing
> benchmark results in their license agreements.
OH, I didn't know that. Therefore it's even more important
to have such tests, so everybody can run his own tests and
compare ;-)
> Even fairly comparing open-source implementations is
> difficult enough, as can be seen by the numerous flamings
> between the PostgreSQL and the MySQL camp, for example.
OK, each implementation could contribute tests that make
their DB look good. If the tests explain what they do, a
user can decide if this is what he needs.
Michael