On Apr 14, 2006, at 1:45 PM, Dieter Maurer wrote:

Tim Peters wrote at 2006-4-13 19:44 -0400:
Beyond that, it requires someone to try
it.  I'm reminded that when the MEMS Exchange wrote Durus (a kind of
"ZODB lite" ;-):



they left their entire BTree implementation coded in Python -- it was
"fast enough" that way.

I can tell you from experience that for cataloguing purposes
a C implementation is vital:

   My C based "IncrementalSearch2"
   performs large "or" queries two orders of magnitude faster
   than the Python based "IncrementalSearch".


We added BTrees to Durus, not to save cpu cycles, but for better
memory/storage behavior, which for our applications seems to be
more important than the speed of low level BTree operations.
I assume that a C implementation for specialized
key/value types must be even better for memory/storage behavior
since you can arrange things to be more compact.
Of course the low level operations can be faster too,
and available for direct access from other C extensions,
and everybody likes that.

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -  ZODB-Dev@zope.org

Reply via email to