PyFilesystemはPython製のオープンソース・ソフトウェア。システムを構築した当初はファイル数も多くなく、ローカルに保存しておけば良いレベルだったかも知れない。だがサービスが拡大する中で別サーバに保存したり、さらにAmazon S3のようなストレージサービスを利用することになったりする。

ピクチャ 211.png

ローカルもクラウドも一緒に

 

そうしたサービスのレベルによって選択肢が変わってきたとき、システムを都度修正するのは非常に面倒だ。さらに扱うファイルの種類によってライブラリを変えるのも大変だ。一元管理できるPyFilesystemを使ってみよう。

PyFilesystemは多数のファイル形式に対応したファイルアクセスツールだ。ローカルファイルはもちろん、FTP、メモリ、マウント、RPC、SFTP、Amazon S3、テンポラリファイル、Wrap、Zipファイル等に対応している。インタフェースは共通ではないが、ライブラリとしてはPyFilesystemで一元的に対応できる。

これだけのサービスに対応していれば、サービスのステージに応じて切り替えることも容易になる。画像ファイルはS3で、セキュアなファイルはローカルで…などといった使い分けも容易に実現できるはずだ。

 

pyfilesystem - Project Hosting on Google Code

 http://code.google.com/p/pyfilesystem/