[ZODB-Dev] zodb design document

Jim Fulton jim at zope.com
Wed Aug 12 11:58:04 EDT 2009


On Wed, Aug 12, 2009 at 10:33 AM, Jürgen
Herrmann<Juergen.Herrmann at xlhost.de> wrote:
> hi there!
>
> is there a zodb design document?

There's: http://www.zope.org/Documentation/Developer/Models/ZODB

But it is pretty old and out of date.

> what i'm interested in are the following things:
>  - some basic description how the zodb works (f.ex. i don't understand
>   what the difference between a serial and a transaction id is)?

There is no difference. I thought there could be when I originally
designed ZODB, but it turns out to be good enough to use the tid as
the serial.

>  - looking at basestorage and the methods that have to be implemented,
>   is there documentation what the reimplementation in a concrete
>   subclass has to do exactly? (ordering of things, desired side effects
>   etc.)?

You should look at the storage interfaces in ZODB.interfaces and in
ZEO.interfaces. You should have a firm understanding of how
transactions work in general.  Our transaction system is based on
time-stamps.

You should also ask questions here.

> why do i ask? i'd like to create a RadosStorage zodb backend ceph's
> underlying object storage "RADOS" (see
> http://ceph.newdream.net/blog/category/rados/ )

That's interesting.  You might want to look at DirectoryStorage,
http://dirstorage.sourceforge.net/, which implements the storage APIs
(at least as they existed a few years ago) on top if a file system.

Jim


-- 
Jim Fulton


More information about the ZODB-Dev mailing list