[ZODB-Dev] Re: [Zope-Annce] ZODB Storages feature comparison matrix

Shane Hathaway shane at zope.com
Wed Jun 25 16:44:46 EDT 2003


Toby Dickenson wrote:
> We have quite a few different ZODB storage implementations now, so I thought 
> it would be useful to have a feature comparison matrix. A table covering 
> FileStorage, DirectoryStorage, and BDBStorage is now in ZODB CVS.
> 
> http://cvs.zope.org/ZODB3/Doc/storages.html?rev=1.

FWIW, here are the missing details for Ape.

Installed users: a handful

Active developers: 1-2

Supported platforms: everywhere.

ZODB3: yes.

ZODB4: not yet.

Implementation overview: Serializes and stores objects using components. 
  By writing or configuring components, you can store ZODB objects in 
virtually any kind of database.  Alternatively, you can use one of the 
default configurations to store objects on the filesystem, in 
PostgreSQL, or in MySQL.

Variants: Filesystem storage, relational storage, and custom storage.

External dependencies: none.

Supports undo: not currently.

Supports versions: no.

Performance: depends on the component configuration.

Memory requirements: independent of storage size.

Disk space efficiency: depends on the component configuration.

Packing: Not needed when storing on the filesystem, but relational 
databases will need some kind of packing or reference counting.

Online backup: expected to be provided by the database.

Online replication: no.  (Toby, you should add a note saying it is 
possible to implement real-time replication regardless of storage using 
ZRS, although ZRS has only been tested extensively with FileStorage.)

Storage checking tools: depends on the database.  No extra tools.

Storage dumping tools: None needed.  The data is not encoded.

Startup/shutdown time: small, and independant of storage size.

Recovery after power loss: expected to be provided by the database.

Behavior with lost data chunks: depends on the database.

Administration overhead: you are expected to know your database.

Other features: Ape component configurations are reusable for purposes 
other than persistent data storage.  You can use them for exporting, 
importing, merging, synchronizing, and versioning objects.  Ape also has 
a lot of functionality that does not depend on ZODB.

Missing features: It is not yet easy to configure components.  Also, 
when storing data on the filesystem, Ape doesn't yet poll the filesystem 
for changes to cached objects.

Shane




More information about the ZODB-Dev mailing list