で、Data::ModelのGJなところを再発見したのでメモ。
Schema定義からCREATE TABLEを発行できる
アプリのセットアップで手抜きできますね。
set_base_driverメソッドの存在
Data::ModelにDriver(DBIやらCache::Memcachedやら)を後付けで食わせることができます。
Driver定義は、DB1つのみであれば1つだけ定義すればOK。管理上も楽できそうです。
ある日突然上司から、DBをMySQLからSQLiteに移行するように言われたりしても、Driver定義だけ書き換えればOK。これでもう悩み無用です。
column定義はSchema定義と分離可能
column定義の使いまわしができます。同じような構造のcolumn定義を何度も書くようなアホらしいことを避ける事が可能です。
cacheを挟み込むことができるようになるらしい?
DBI や Memcached のストレージへのアクセスするさいに Memcached などのキャッシュを 挟む事が出来ます。の、予定。
そもそもDBへクエリを投げて、ステートメントハンドラを受け取るという処理は、Memcachedにおけるgetやset等と比較すると、決して軽いものではないです。
ここで予定されている仕組みが実装されると、そんなDBへの問い合わせの頻度自体を減らすことができ、結果的にアプリケーションの高速化およびDBサーバの負荷軽減につながります。
0 件のコメント:
コメントを投稿