[seasar-dotnet:775] Re: S2DAO.NET:Oracle10g への外だし SQL の実行が遅いように見える

kubo [E-MAIL ADDRESS DELETED]
2008年 2月 6日 (水) 18:09:03 JST


久保です。

とりあえず、解決(回避!?)してよかったです。

2点ほど補足を入れます。


> Hint句が消える

最新バージョンですが自分も再現しました。
ちなみにJava版だと消えずに残ります。
これは今回の件とは別に課題とします。
(結構致命的ですよね...これ)


> DBFluteのログとDaoの初期化

DBFluteのログでは「Daoの初期化時間」と「Daoの実行時間」を出力しています。

「Daoの初期化時間」
SqlCommand Initialization Cost: [00m00s000ms]

「Daoの実行時間」
===========/ [00m02s344ms - Selected count: 1 first=...

「実質的な実行時間」 = 「Daoの実行時間」-「Daoの初期化時間」
となります。2回目以降は「Daoの初期化時間」が大抵0なので、
「Daoの実行時間」がそのまま「実質的な実行時間」となります。

なお、この「実行時間」には「SQL実行直後のEntityへのマッピング処理」
も含まれます。

2008/2/6 Ryo Miyagi <[E-MAIL ADDRESS DELETED]>:
> 宮城です。
>
> > > string sql = "SELECT * FROM " + tableName + " WHERE rownum <= 1";
> > を行ったところ、確かに1回目も速くなりました。半分以下の数値になりました。
>
> お手数ですが、上記の暫定対応でお願いします。
>
> 根本的な対応としましては、コミッタ間で検討したいと思いますが、
> 何か良いアイデアがありましたら、どんどんご意見ください。
>
> > データプロバイダを
> > .NET Framework Data Provider for Oracle
> > ↓
> > .NET Framework Data Provider for OLE DB
> > に代えたところ、全般的に速くなりました。
>
> .NET Framework Data Provider for OLE DB
> の方が速いのが意外ですね。気になります。
> 時間があるようでしたらOracle Data Provider .NETで検証してみるのもいいかもしれません。
>
> _______________________________________________
> seasar-dotnet mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>


seasar-dotnet メーリングリストの案内