[Seasar-user:11065] Re: s2dao 大規模テーブルでselect count(*) 文が非常に時間がかかる
Toshihiro Nakamura
[E-MAIL ADDRESS DELETED]
2007年 10月 17日 (水) 13:52:09 JST
中村(taedium)です。
> s2Dao -> JDBCの順番に同じsqlを実行
> JDBC -> s2da0の順番に同じsqlを実行
私が言いたかったのは、
例えば問題となっているgetNumberOfRows()が
定義されたDaoをHogeDaoとするとき
public interface HogeDao {
int foo();
int getNumberOfRows();
}
foo()を呼んでからgetNumberOfRows()を呼ぶと、
HogeDaoの初期化時間を含まない
getNumberOfRows()の実行時間を計測できますよ、
ということでした。
(foo()を呼んだときに初期化されるので)
> jdbc: 156 msec
> dao : 6781 msec
JDBCで直接実行したときと、S2Dao経由で実行したときで
使われるインデックスが異なるというのは考えにくいので
mysql-connector 5.0.3のメターデータ取得が遅いのかもしれませんね。
(Daoの初期化でDBのメターデータへのアクセスが起こります)
ともあれ、解決されたようでよかったです。
--
Toshihiro Nakamura <[E-MAIL ADDRESS DELETED]>
Seasar-user メーリングリストの案内