Other Persistent Storage Modules

The modules listed on this page provide other mechanisms for storing data. Some modules are simply the disk-based equivalent of dictionaries; others provide for persistent storage of arbitrary Python objects.

Disk-based Dictionaries
anydbm Included with the standard Python distribution. The anydbm module is a generic interface to all the DBM-like modules listed in the next two lines, selecting from whichever modules are installed.
DBM,
GDBM,
dbhash
Included with the standard Python distribution. Each of these modules is an interface to a specific library.
BSDDB Included with the standard Python distribution. In addition to dictionary-like behaviour, this module also supports B-trees, which allows traversing the keys in sorted order.
Metakit MetaKit is a C++ library for storage, transport, and manipulation of structured objects and collections. A Python interface is available.
mxBeeBase mxBeeBase is a high performance construction kit for disk based indexed databases. It offers components which you can plug together to easily build your own custom mid-sized databases, up to around 2Gb on 32-bit platforms).
Persistent Objects
pickle.py Included with the standard Python distribution. The pickle module can convert Python objects to and from a string representation.
shelve.py Included with the standard Python distribution. Built on top of the pickle and anydbm modules, the shelve module behaves like a persistent dictionary whose values can be arbitrary Python objects.
PyPerSyst A portable object database management system (ODBMS) as well as a database application framework. PyPerSyst works well with Pyro and Twisted.
PyVersant A wrapper for the Versant commercial OODBMS.
ZODB The Zope Object Database is a persistent-object system that provides transparent transactional object persistence to Python applications.
Durus A simpler object persistence system than ZODB, developed at MEMS Exchange after substantial experience with ZODB.