ANNOUNCE: KirbyBase 1.5
Wed, 03 Sep 2003 22:34:47 GMT
KirbyBase 1.5 is now available at:
What is KirbyBase?
KirbyBase is a simple, pure-Python, plain-text, flat-file database
management system that can be used either embedded in your application
or in a client/server, multi-user mode.
To find out more about KirbyBase, go to:
Well after reading some posts on comp.lang.python about how slow eval
can be, I set about eliminating eval from KirbyBase. It resulted in
uglier code, but increased performance, enough of a performance increase
that I figured I would go ahead and release a new version.
Specifically, the changes are:
Changed the way queries are handled internally. Instead of doing an
eval to do numeric and datetime comparisons, I changed it to do the
actual comparison itself. This resulted in a 40% speed increase on
large queries that do comparison expressions.
Changed how data is passed between the server and the client in
client/server mode. I now use cPickle instead of repr and eval. This
resulted in an approximately 40% speed increase in client/server
An anecdotal example, doing a date range select query against a 78,000
record table returning 23,800 records in the result set.
Version 1.4: 13 seconds
Version 1.5: 8 seconds
Who says Python isn't fast? :)