Heh, yeah.ZODB seems to be pretty good for the purpose here (it&#x27;s performance is usually not the bottleneck).<p>But when indexing large texts, it becomes a problem. One way to solve it is instead of using generic serializing for data structures, take real structure into account. Many isinstance() calls cause the CPU bottleneck [<a href="http:&#x2F;&#x2F;www.upfrontsystems.co.za&#x2F;Members&#x2F;roche&#x2F;where-im-calling-from&#x2F;zodb-benchmarks" rel="nofollow">http:&#x2F;&#x2F;www.upfrontsystems.co.za&#x2F;Members&#x2F;roche&#x2F;where-im-calli...</a>]. Though, it turns out to be not as bad [<a href="http:&#x2F;&#x2F;www.upfrontsystems.co.za&#x2F;Members&#x2F;roche&#x2F;where-im-calling-from&#x2F;zodb-benchmarks-revisited&#x2F;" rel="nofollow">http:&#x2F;&#x2F;www.upfrontsystems.co.za&#x2F;Members&#x2F;roche&#x2F;where-im-calli...</a>]