Ploneにblobを導入。
Ploneは、Zope2の上にあります。Zopeは、データストア先として、ZODBというデータベースを使っています。これは、何でも一つのファイルに格納してしまいます。イメージ的には、accessのmdbファイルみたいな物です。一つのファイルですむので簡単にバックアップ、復元ができる利点があります。しかし、ファイルや画像もZODB内に取り込んでしまうためデータベースファイルが巨大な物になってしまうという弱点がありました。これを解決するのが、Blobという仕組みです。ZODBのバージョンが3.8になってから利用できるようになりました。なお、Plone 4 では標準となっています。
-
plone.app.blob
設定方法:
-
buildout.cfg内の[instance]セクションにある、egg, zcmlに、plone.app.blobを追記します。そして、blob-storage へ var/blobstorage を追記します。
-
そして、./bin/buildout をおこないます。
-
./bin/instance fg (startなど) で起動します。
-
アドオンプロダクトから、plone.app.blob: ‘File’ replacement type 1.0b8 を選択してインストールします。
これで、ファイルはBlob対応となります。
※既存のコンテンツ(File, Image)をblobに置き換えたい場合は、egg, zcmlに、Products.contentmigration も追加しておきます。そして、ファイルタイプを置き換える場合、PloneサイトのURLの後ろに、@@blob-file-migrationを入力します。イメージの場合は、@@blob-image-migration を入力します。

こんな感じで、マイグレーションしてくれます。
参考サイト
-
[Plone User’s Group Japan] zc.buildoutを使ってプロジェクトを管理する
疑問:
-
@@blob-image-migration を行ったら、KeyError: ‘ATContentTypes.ATBlob’ といわれた。
-
