On May 5, 2007, at 4:48 PM, Dennis Allison wrote:
Has anyone written a utility that copies out the content of a ZODB
(in my case, a Zope Data.fs) and stores it in the local file system in
some rational way?
Zope does not solve the problem because the backing Relational DBMS is
unavailable and the ZODB and the RDBMS are closely tied.
Hm, so I take that to mean that you can't start Zope or load the
objects in ZODB (in Zope or even from a Python prompt).
I suggest you use zope.xmlpickle, http://svn.zope.org/zope.xmlpickle/
trunk/, along with the file storage iterator or the file-storage
record iterator, which only iterates over current versions, to
convert the database records to XML. The XML pickler tries to
produce usable, for some definition of usable, XML without knowing
anything about the data. A good XML hacker should be able to convert
the XML to some more directly usable format. We've had good success
using xml pickles for a couple of projects in recent years. For
example, xml pickles were used to export the Zope 3 collector for
import to Launchpad.
I really should write some utilities that put the iterators and xml
pickler together, although it shouldn't be hard.
Jim Fulton mailto:[EMAIL PROTECTED] Python
CTO (540) 361-1714
Zope Corporation http://www.zope.com http://www.zope.org
For more information about ZODB, see the ZODB Wiki:
ZODB-Dev mailing list - ZODB-Dev@zope.org