[DB-SIG] speedtest

M.-A. Lemburg mal@lemburg.com
Wed, 08 Jan 2003 11:18:42 +0100


Oliver Vecernik wrote:
> Hi!
> 
> As I started playing with Python and the DB-API 2.0 I was interested in 
> a comparison between different open source databases. Reading this 
> newsgroup brought me to SQLite and there I found a nice test written by 
> D. Richard Hipp (http://www.hwaci.com/sw/sqlite/speed.html).
> 
> I wrote a small Python script 
> (http://members.aon.at/vecernik/download/speedtest.py) for testing 
> PostgreSQL, MySQL (MyISAM, InnoDB, BerkeleyDB), SQLite and SAP DB. I 
> didn't succeed with Firebird, maybe someone else writes a patch.
> 
> I ran the test on a W2k server (INTEL P4/2GHz, 512MB RAM). You can find 
> my results from the script output 
> (http://members.aon.at/vecernik/download/speedtest.txt) or as csv-format 
> file (http://members.aon.at/vecernik/download/speedtest.csv). The field 
> format should be self explanatory ;-)
> 
> My results do *not* match very closely with the original ones. :-(
> 
> I don't know exactly why. PostgreSQL seems to have a memory problem, as 
> test07 grows with every test cycle. Restarting postmaster, solves the 
> problem. SAP DB seems to be quite unstable (to be honest, this is a beta 
> version). Especially when the log runs out of space, it is possible to 
> crash the server! 

It doesn't crash the server: when the log is full, the database
does an emergency shutdown to prevent data loss.
You have to enable autolog for SAP DB so that the log can
be automatically backed up and then cleared. Logs like the
one SAP DB creates are needed to assure transaction security
and to make sure that the database remains in a clean
state.

> MySQL and SQLite seem to be rock solid.

The choice of database depends on your needs. MySQL and SQLite
don't offer a complete set of SQL features. OTOH, you may
not need them. Then again, SAP DB and PostgreSQL don't have any
problem creating GB-size databases which is something MySQL
and SQLite are not up to. You'll probably also find that
those two don't scale very well.

Anyway, that's my experience. YMMV.

-- 
Marc-Andre Lemburg
CEO eGenix.com Software GmbH
_______________________________________________________________________
eGenix.com -- Makers of the Python mx Extensions: mxDateTime,mxODBC,...
Python Consulting:                               http://www.egenix.com/
Python Software:                    http://www.egenix.com/files/python/