スクリーニングに時間がかかり過ぎる

スクリーニングで結構時間がかかる。
他のプログラムも動かしているからアレだけど、20銘柄で20秒近くかかったりする。50銘柄だと50秒から1分近く。本番は500銘柄だから、500秒としても8分を越えてしまう...制限時間超えてるじゃん。本番サーバのスペックとか分からないからちょっと不安。まあ僕の安物モバイルセレロンなんかよりは数段よいはずなんで、大丈夫だろうけどね。

これでもインデックスの情報取得回数を減らしたのでこの程度で収まってるが、最初作ったときには倍近くかかってました。20銘柄のときは、せいぜい30回程度しかDBにアクセスしてないはずなんだけれど。これもHSQLのせいかなあ。てか30回って実は多いのかもしれない。

本当は、InformationManager#getStockDaily(java.util.ArrayList stocklist)みたいなのがあればSQL叩くのは1回にできるはずなんで*1、だいぶ速くなるんじゃないかと思うんだけど、追加されないかなあ....ついでに、getStockDailyByDate(java.util.Calendar date, java.util.ArrayList stocklist)もほしい。

*1:内部の実装しらないんで全然はずしているかもしれない