I am looking for an object database for Python (no handmade pickles :D).
What are my options (besides the obvious ZODB)?
I am looking for an object database for Python (no handmade pickles :D).
What are my options (besides the obvious ZODB)?
Check PersistenceTools on the python.org wiki, which mentions a few that might count. (the DatabaseProgramming page also mentions Matisse under "Non-relational Databases", I don't know it, just mention it because for some reason, it's not included on that other page)
Dobbin. Somewhat similar to ZODB, but much simpler. It looks nice but I haven't tried it myself. I haven't been able to find much information about it. It has been at version 0.2 for over a year. I don't know if it is still being actively maintained, if it is reliable enough for mission-critical applications.
From the description on the site, the main difference between Dobbin and other object databases is that persisted objects are read-only unless they are explicitly "checked out". This may make dealing with objects a little trickier, but it may make the database faster and more memory-efficient.
Cog:
Seems not updating for a long time.
And this is a paper on 6th International Python conf. about object database. https://legacy.python.org/workshops/1997-10/proceedings/shprentz.html
DyBASE by Konstantin Knizhnik who developed a lot of embedded databases for multiple programming languages. It has transactions and indices. There are tests in the distribution and I use it myself for persisting elements in a Python Queue. My example is also available at github as python-persistence-queue
MongoDB perhaps comes close - not object oriented but document-oriented and coming close to object databases.