[ZODB-Dev] Writeperformance for different storages

Barry A. Warsaw barry@zope.com
Wed, 18 Dec 2002 08:25:54 -0500


>>>>> "AJ" == Andreas Jung <andreas@andreas-jung.com> writes:

    AJ> We have a project running where we map the structure of an XML
    AJ> document to the hierarchy of the ZODB (means we need to create
    AJ> several hundred to some thousand objects inside the
    AJ> ZODB). Since write performance is critical in this case (user
    AJ> must wait :-) ) I wonder how the other ZODB storages
    AJ> (AdaptableStorage, DirectoryStorage, Berkley Storage) compare
    AJ> to FileStorage (regarding at write performance)? Or what are
    AJ> the parameters to tune the FileStorage for optimal
    AJ> performance?

Since AFAIK we don't have any standard write or read performance
benchmarks that could be used in a head-to-head comparison, it's
difficult to say.  Most of the testing I've done was quite a while
ago, using loadmail to test for write performance.  It's not a good
benchmark because it's difficult to reproduce the exact testing
conditions, but at the time I found that new-Berkeley storages (for
some definition of new a few months ago <wink>) could be tuned to be
only about twice as slow as FileStorage for a write intensive
application. 

That's not bad actually, considering all the overhead (and benefits)
of BerkeleyDB, but that does require gobs of memory and at least two
independent disk controllers (one for the BDB log files and one for
the data).  Plus some system-specific tuning of cachesizes, etc.

-Barry