[Seasar-user:16332] Re: テーブル項目追加に伴うパフォーマンス低下についてのご質問

kubo [E-MAIL ADDRESS DELETED]
2008年 11月 19日 (水) 21:10:59 JST


久保(jflute)です。

>>> パフォーマンスが低下するという現象が発生しました。
>>> (検索・更新を行うある機能:39秒⇒53秒)

根本の確認です。
14秒遅くなったとありますが、話題としている
「SQLファイルによる検索(select *)」の実行のみが
14秒遅くなったのでしょうか?

もし、そうではなく、「そのSQLを含んだ画面からの1リクエスト」が
14秒遅くなったというのであれば、そのリクエストの中のどの処理が
遅くなったのかが特定できないので、議論が漠然としてしまいます。
ので、せめてアプリプログラムレベルでも「どの処理(SQL)」が
遅くなったのかを掴むことが大事です。


> つまり、Beanを変更したことによる違いは、
> データの設定処理を行うか行わないかの差なのでしょうか?

で、こちらですが、理論値で話します。

「データの設定処理をするかしないか」は、
「BeanにSetter/Getterを追加するしない」に一致します。

「データ転送処理をするかしないか」は、
申し訳ありませんがちょっと自分では分かりかねます。
ResultSetでnext()とするだけでそのレコードのSQLで指定された
全てカラムの値を全て転送するのか、それとも、ResultSetで
getString("COLUMN_NAME")と明示的に値を取得したカラムだけ
転送が行われるのか、確認したことがありません。

2008/11/19 Kobayashi.Tomomi <[E-MAIL ADDRESS DELETED]>:
>
> 何度もありがとうございます。
>
>>
>>> テーブルの列追加(VARCHAR2(3000)を10列追加)を行ったところ、
>>> パフォーマンスが低下するという現象が発生しました。
>>> (検索・更新を行うある機能:39秒⇒53秒)
>>
>>見落としてましたが,SQL ファイルを使った select * ~
>>な問い合わせの処理時間が遅くなっただけではないと
>>いうことでしょうか?
> 列追加後のDBに対しBeanだけを差し替えて(SQLも同一)処理を行う試験をしていますが、Bean(setter/getter)に増えた列を追加すると遅くなっております。(Beanだけを列追加前に差替えると速くなるという動きです)
>
>>
>>アプリケーションのどの部分でどのくらい遅くなったか
>>(検索で何秒,更新で何秒,など) という情報もあった方が
>>いいですね.
> 情報不足で申し訳ありません。
> Bean(getter/setter)だけを列追加前に戻すと性能が元に戻る
> というところまでしか調査ができておりません。
> これから調査致します。
>
>
> 以上、よろしくお願い致します。
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>


Seasar-user メーリングリストの案内