[Seasar-user:12556] Re2+α: [S2JDBC]SQL 自動生成 カウントとヒント句
[E-MAIL ADDRESS DELETED]
[E-MAIL ADDRESS DELETED]
2008年 1月 18日 (金) 18:46:30 JST
片岡です。
> 1)ページング前の件数取得に関して
> 2)ヒント句の追加
とも、前向きに検討いただけるとのこと、ありがとうございます。
調子にのって、こんなものも検討していただけないかを挙げさせていただきます
(自分たちのプロジェクトだけでやっているかもしれないので、前回に挙げたものより
汎用性が低いとは思います)。
3)実際にDBに投げるSQL文に、コメントとして、呼び出し元クラス名をつける。
イメージ select /* employDao */ aaa from ...
僕がかかわるプロジェクトでは、DB負荷が重いケースが多く、ORACLEのstatspackや
VeritasのIndepthというツールから、重たいSQLを監視し、SQLチューニングを実施したり、
INDEXを貼るなどの対応を行うような運用をしています。
特に、大規模なプロジェクトになると、SQL文だけからでは、どの画面(ないしはクラス)から
投げられたものか、監視サイドだけでは、特定できないケースも多く、チューニング対象の
特定が困難なため、必ず、SQLを投げるクラスに、自分のクラス名をSQL文のコメントとして
つけるようなコーディングルールにしています。
そういった、対応がSQLの自動生成での可能になると、さらに適用範囲が広がるかと
思います。
●これは自分たちで拡張しろといわれそうですが、自分たちのプロジェクトで実施している
その他の拡張例を参考までにあげておきます。
たとえば、「SQL実行時間のログ出力」というのも実施しています。今自分たちでは、
独自のフレームワークなのですが、フレームワーク側で設定があったものだけログを
出すということを実施しています。
意図は、上述のIndepthなどで監視する方法では、バインド値がみられないので、
特定のWHERE句の値だけ遅い場合などを検地できず、実際に、WHERE句の値
だけ遅いようなケースに対応できなかったためそういう拡張をほどこしました。
要望ばかりで恐縮ですが、また、もう少し勉強して、要望がでてきたら挙げさせてください。
よろしくお願いします。
Seasar-user メーリングリストの案内