[ZODB-Dev] ZEO and replication of BTree based objects

Toby Dickenson tdickenson at geminidataloggers.com
Thu Jun 5 11:26:41 EDT 2003


On Thursday 05 June 2003 09:50, Roché Compaan wrote:
> * Tim Peters <tim_one at email.msn.com> [2003-06-05 08:15]:
> > The maximum size of
> > a bucket depends on the kind of bucket it is (== the kind of BTree it
> > belongs to), and is measured by the number of key+value pairs in the
> > bucket:
> >
> >     IIBTree  120
> >     IOBTree   60
> >     OIBTree   60
> >     OOBTree   30
> >
> > These numbers aren't tunable, and were chosen mostly to keep pickle sizes
> > reasonable.  Integers require (possibly much) less pickle space than
> > arbitrary objects, so the more I's in a flavor of BTree, the more
> > key+value pairs its buckets are allowed to hold.
>
> This is very usefull information, thanks Tim.
>
> If I put two and two together it seems that if I have a transaction that
> modifies values of existing keys in 10 distinct OOBTree buckets for
> example, that 300 objects will need to be replicated. 

Not necessarly. If the objects are individually persistent then you will need 
to replicate 300 object references, not 300 whole objects. And most likely 
less than 300, because most buckets are not full.

-- 
Toby Dickenson
http://www.geminidataloggers.com/people/tdickenson



More information about the ZODB-Dev mailing list