Re: Questions on Berkeley db and hash; some on ndbm too....

Lloyd Parkes (Lloyd.Parkes@vuw.ac.nz)
Fri, 22 Mar 1996 08:44:30 +1400

This are somewhat timely questions because I have just finished some
preliminary tests, and was going to ask some questions of my own.

I had a chat with Keith Bostic about a year or so ago about the state of the
db code. There is no transaction or multithreading support in db 1.85 at all.
The papers in no way shape or form reflect the current state of the db code.
Even so, the Berkeley db package is still a pretty good dbm style library. It
is apparently the fast public available library around, and I like having
access to btree routines.

There are a couple of things that need to be kept in mind when using the db
with ICR3 (libdb.a or libucbhash.a). 1) In order to maintain robustness, dsa93
syncs the db file after every write (this can be turned off). 2) To work
around a bug in the db code, the bucket size is 32K.

My initial testing leads me to believe that these two items seriously impair
performance. At one stage dsa93 wanted ~1GB of disk (quipu uses ~10MB
including .bak files) and response times were slower on an AlphaServer 1000
than quipu on an Alpha 3000/300. These are preliminary results and I haven't
given full details of the test conditions. I will put up my preliminary
results properly on a secure web page. You will need to supply the IC ftp
username and password to access the page. Many IC members make money from this
technology, and I don't see a particularly good reason why I should scare
their customers with preliminary test results that I think will change. The
URL for this page will be <http://www.vuw.ac.nz/~lloyd/preliminary/dsa93.html>
, it should be available in a few minutes.

Cheers,
Lloyd