Differences between revisions 6 and 15 (spanning 9 versions)
Revision 6 as of 2007-06-16 00:59:33
Size: 2779
Editor: FredDrake
Comment: update link
Revision 15 as of 2009-11-05 20:35:33
Size: 3670
Editor: emedia
Comment: Remove ZODB PgStorage, add RelStorage
Deletions are marked like this. Additions are marked like this.
Line 10: Line 10:
[http://docs.python.org/lib/module-anydbm.html anydbm] [[http://docs.python.org/lib/module-anydbm.html|anydbm]]
Line 16: Line 16:
[http://docs.python.org/lib/module-dbm.html DBM],[[BR]]
[http://docs.python.org/lib/module-gdbm.html GDBM],[[BR]]
[http://docs.python.org/lib/module-dbhash.html dbhash]
[[http://docs.python.org/lib/module-dbm.html|DBM]],<<BR>>
[[http://docs.python.org/lib/module-gdbm.html|GDBM]],<<BR>>
[[http://docs.python.org/lib/module-dbhash.html|dbhash]]
Line 22: Line 22:
[http://docs.python.org/lib/module-bsddb.html BSDDB] [[http://docs.python.org/lib/module-bsddb.html|BSDDB]]
Line 27: Line 27:
[http://www.equi4.com/metakit/ Metakit] [[http://www.equi4.com/metakit/|Metakit]]
Line 32: Line 32:
[http://www.lemburg.com/files/python/mxBeeBase.html mxBeeBase] [[http://www.lemburg.com/files/python/mxBeeBase.html|mxBeeBase]]
Line 38: Line 38:
== Data Writing and Parsing ==

PyTables reads and writes large amounts of numeric data.

[[http://python-dsv.sourceforge.net/|Python-DSV]] parses comma-separated value (CSV) files or similar delimiter-separated files (see also PEP:0305).

The xBase .dbf file format used by several old systems such as dBase(II,III,IV), Fox(Base,Pro)
 * xBase (http://linux.techass.com/projects/xdb/) - Python interface in plans
 * http://www.fiby.at/dbfpy/index.html
 * http://cbbrowne.com/info/xbase.html
 * http://www.clicketyclick.dk/databases/xbase/format/
Line 40: Line 52:
[http://docs.python.org/lib/module-pickle.html pickle.py] [[http://docs.python.org/lib/module-pickle.html|pickle.py]]
Line 45: Line 57:
[http://docs.python.org/lib/module-shelve.html shelve.py] [[http://docs.python.org/lib/module-shelve.html|shelve.py]]
Line 51: Line 63:
[http://sourceforge.net/projects/pypersyst/ PyPerSyst] [[http://sourceforge.net/projects/pypersyst/|PyPerSyst]]
Line 56: Line 68:
[http://starship.python.net/crew/jmenzel/ PyVersant]
A wrapper for the [http://www.versant.com Versant commercial OODBMS].
[[http://starship.python.net/crew/jmenzel/|PyVersant]]
A wrapper for the [[http://www.versant.com|Versant commercial OODBMS]].
Line 60: Line 72:
[http://wiki.zope.org/Wikis/ZODB/FrontPage ZODB] [[http://wiki.zope.org/ZODB]]
Line 64: Line 76:
 * DirectoryStorage: http://dirstorage.sourceforge.net/
 * RelStorage: http://pypi.python.org/pypi/RelStorage
Line 65: Line 79:
[http://www.mems-exchange.org/software/durus/ Durus]
A simpler object persistence system than ZODB, developed at
MEMS Exchange after substantial experience with ZODB.
  
[[http://www.mems-exchange.org/software/durus/|Durus]]

Durus is a persistent object system that offers an easy way to use and maintain a consistent collection of object instances used by one or more processes. Changes to persistent instances are managed through a cached Connection instance that includes {{{commit()}}} and {{{abort() }}} methods so that changes are transactional.

Other Persistent Storage Modules

The modules listed on this page provide mechanisms for storing data on disk. 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).

Data Writing and Parsing

PyTables reads and writes large amounts of numeric data.

Python-DSV parses comma-separated value (CSV) files or similar delimiter-separated files (see also 0305).

The xBase .dbf file format used by several old systems such as dBase(II,III,IV), Fox(Base,Pro)

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.

http://wiki.zope.org/ZODB The Zope Object Database is a persistent-object system that provides transparent transactional object persistence to Python applications.

Durus

Durus is a persistent object system that offers an easy way to use and maintain a consistent collection of object instances used by one or more processes. Changes to persistent instances are managed through a cached Connection instance that includes commit() and abort()  methods so that changes are transactional.

PersistenceTools (last edited 2009-11-05 20:35:33 by emedia)

Unable to edit the page? See the FrontPage for instructions.