Я знаю, что Вы ищете весь слой персистентности, но hbm2ddl задача NHIBERNATE может сделать это почти как остроту.
существует задача NAnt, доступная для вызова его, который может представлять интерес.
Просто, я только что узнал.
Пример,
https://graph.facebook.com/friends_Id/picture?width=200&height=200
Тада ~
В настоящее время Graph действительно может вернуть вам квадратное изображение любого размера. Они кэшируют наиболее распространенные размеры (например, 100x100, 128x128) и возвращают ближайший размер по следующему запросу (наведите курсор, чтобы увидеть)