[ZODB-Dev] Migrating from filestorage to relstorage with blobs

Maurits van Rees m.van.rees at zestsoftware.nl
Mon Jan 10 17:58:46 EST 2011


Hi,

I have been doing some testing with blobstorage and relstorage.
My use case is Plone 3.3.5 on Zope 2.10.11 with plone.app.blob 1.3 and 
ZODB 3.8.6-polling (so 3.8.6 with the patches for relstorage), but my 
questions and remarks are probably valid for other zodb-use as well.


Starting with RelStorage 1.5.0a1 (or trunk) there is support for blobs 
in RelStorage.  You have the option to either store the blobs on the 
file system (var/blobstorage) or store them in the relational database.

With filestorage combined with blobstorage it seems you only have one 
option: you get a small Data.fs and a big var/blobstorage directory that 
contains the files.

Question: can the blobs also be stored in the Data.fs (supposing you 
want that)?


plone.app.blob has migration code to move existing Archetypes files and 
images to blobstorage: @@blob-file-migration and @@blob-image-migration.

I successfully migrated a 100 MB filestorage without blobstorage to a 
setup of relstorage with blobstorage.  Both possible routes (first to 
relstorage using zodbconvert, then to blobstorage or the other way 
around) worked.

Question: if I start with filestorage plus a var/blobstorage directory, 
is it possible to migrate this to relstorage with blobs stored in the 
relational database?

Posed more general: is there migration code that migrates blobs from a 
(relational) database to a var/blobstorage directory or the other way 
around?


I can at least say that in my light testing so far, RelStorage 1.5.0a1 
with blobs works fine, so thanks Shane!


-- 
Maurits van Rees
Programmer at Zest Software http://zestsoftware.nl
Personal website http://maurits.vanrees.org/



More information about the ZODB-Dev mailing list