[Seasar-user:16317] テーブル項目追加に伴うパフォーマンス低下についてのご質問
Kobayashi.Tomomi
[E-MAIL ADDRESS DELETED]
2008年 11月 19日 (水) 15:08:04 JST
いつもお世話になっております。
現在開発中のプロジェクトにてSeaser2を使用しております。
テーブルの列追加(VARCHAR2(3000)を10列追加)を行ったところ、
パフォーマンスが低下するという現象が発生しました。
(検索・更新を行うある機能:39秒⇒53秒)
JAVABEANSのみをテーブル列追加前に戻すと、パフォーマンス低下も改善します。
(DB・その他ソースを一切変えず)
詳細原因・対応方法がわからず非常に困っております。
JAVABEANSに列追加をした場合(setter/getter)のs2-daoへの影響、
JAVABEANSに定義するテーブルサイズまたは列サイズとパフォーマンスとの関係、
対応方法等、その他どのような情報でも構いませんので、
情報提供をお願いしたいと思います。
よろしくお願い致します。
■s2バージョン
s2-dao-1.0.31.jar
s2-framework-2.3.12.jar
s2-extension-2.3.7.jar
■DB
ORACLE10g
(oracle.jdbc.driver.OracleDriver)
■WEBサーバ
CPU:1.8GHz×1
メモリ:1G
■問題となっているテーブル定義
CREATE TABLE XXXX.T_TEST
(
COL1 NUMBER(9,0) NOT NULL,
COL2 VARCHAR2(60),
COL3 VARCHAR2(600),
COL4 VARCHAR2(60),
COL5 VARCHAR2(600),
COL6 VARCHAR2(600),
COL7 VARCHAR2(600),
COL8 VARCHAR2(600),
COL9 VARCHAR2(600),
COL10 VARCHAR2(600),
COL11 VARCHAR2(600),
COL12 VARCHAR2(600),
COL13 VARCHAR2(60),
COL14 VARCHAR2(600),
COL15 VARCHAR2(60),
COL16 VARCHAR2(60),
COL17 VARCHAR2(60),
COL18 VARCHAR2(60),
COL19 VARCHAR2(600),
COL20 VARCHAR2(600),
COL21 VARCHAR2(600)),
COL22 VARCHAR2(3000
COL23 VARCHAR2(60),,
COL24 VARCHAR2(600),
COL25 VARCHAR2(600)
COL26 VARCHAR2(60),,
COL27 VARCHAR2(600),
COL28 VARCHAR2(600),
COL29 VARCHAR2(600),
COL30 VARCHAR2(600),
COL31 VARCHAR2(600),
COL32 VARCHAR2(600),
COL33 VARCHAR2(600),
COL34 VARCHAR2(600),
COL35 VARCHAR2(600),
COL36 VARCHAR2(600),
COL37 VARCHAR2(600),
COL38 VARCHAR2(600),
COL39 VARCHAR2(600),
COL40 VARCHAR2(600),
COL41 VARCHAR2(600),
COL42 VARCHAR2(600),
COL43 VARCHAR2(600),
COL44 VARCHAR2(600),
COL45 VARCHAR2(600),
COL46 VARCHAR2(600),
COL47 VARCHAR2(600),
COL48 VARCHAR2(600),
COL49 VARCHAR2(600),
COL50 VARCHAR2(600),
COL51 VARCHAR2(600),
COL52 VARCHAR2(600),
COL53 VARCHAR2(600),
COL54 VARCHAR2(600),
COL55 VARCHAR2(600),
COL56 VARCHAR2(600),
COL57 VARCHAR2(600),
COL58 VARCHAR2(600),
COL59 VARCHAR2(600),
COL60 VARCHAR2(600),
COL61 VARCHAR2(600),
COL62 VARCHAR2(600),
COL63 VARCHAR2(600),
COL64 VARCHAR2(600),
COL65 VARCHAR2(600),
COL66 VARCHAR2(600),
COL67 VARCHAR2(600),
COL68 VARCHAR2(600),
COL69 VARCHAR2(600),
COL70 VARCHAR2(600),
COL71 VARCHAR2(600),
COL72 VARCHAR2(600),
----ここから列追加
COL73 VARCHAR2(3000),
COL74 VARCHAR2(3000),
COL75 VARCHAR2(3000),
COL76 VARCHAR2(3000),
COL77 VARCHAR2(3000),
COL78 VARCHAR2(3000),
COL79 VARCHAR2(3000),
COL80 VARCHAR2(3000),
C0L81 VARCHAR2(3000),
C0L82 VARCHAR2(3000),
----ここまで列追加
CONSTRAINT SYS_XXXX PRIMARY KEY (COL1)
)
■JAVABEANS
package jp.co.nec.XXX.web.entity;
import java.io.Serializable;
public class TEST implements Serializable {
private static final long serialVersionUID = 1L;
public static final String TABLE = "T_TEST";
public static final String col1_COLUMN = "COL1";
protected String col1;
public String getcol1() {
return col1;
}
public void setcol1(String col1) {
this.col1 = col1;
}
....col2と続く
Seasar-user メーリングリストの案内