7年前と同じ問題に悩む

正規化されたテーブルとクラスの形が全然違うのでデータの詰めなおしを行うのですが、良いアイディアが浮かばない。たとえば、オブジェクトの初期化にかりに3ステップあり、

1->2->3, 1->2->3, 1->2->3...

と書くのが素直な流れだったとします。ところが、ステップ2はテーブルへのアクセスだったりすると効率が悪すぎます。一回のSQLでデータをかき集めてきたいところです。で、7年前はパフォーマンス優先でSQLの発行回数を減らす方向につっぱしって、プログラムを分かりにくくしてしまいました。しかし、分かりやすさ優先で書くと遅すぎです。

心配しすぎかもしれないのでストレートなコードで実験してみたところ、SQL発行回数最小に比べて60倍ほど時間が掛かりました。1秒で済むところが1分。これは許せません。いいとこ取りなんていううまい話なんかそうそうありません。今週はこれで終わってしまいそうです・・・(^^;