ページの先頭行へ戻る
Interstage Business Application ServerV10.1.0 チューニングガイド
Interstage

2.1.4 データベースの性能測定とチューニング(Symfowareを使う場合)

2.1.4.1 データベース接続環境のチューニング

データベースシステムにSymfoware Serverを利用する場合、業務アプリケーションが動作するプロセスにおいて、クライアント用の動作環境ファイルが必要になります。このクライアント用の動作環境ファイルには、業務アプリケーションがデータベースを操作するための各種パラメタを指定することが可能です。
以下に、チューニングに関する主なパラメタについて説明します。なお、Symfoware Serverのバージョンによってパラメタのデフォルト値などが異なるため、設定の際には必ず使用しているSymfoware Serverのマニュアルも確認してください。

MAX_SQL

同一トランザクション内で指定できるSQL文の数を指定します。

指定形式

MAX_SQL = (SQL文の数)

パラメタの意味
SQL文の数:

2~32000の範囲で指定します。省略した場合は、1024が指定されたとみなします。
なお、非同期アプリケーション連携実行基盤で、メッセージとDBの整合性保証機能を使用する場合には、非同期アプリケーション連携実行基盤の制御として30のSQL文を利用します。業務アプリケーションが利用するSQL文を計算する場合には、30を足して算出してください。

BUFFER_SIZE

通信に利用するバッファサイズを指定します。
単位はキロバイトです。

指定形式

BUFFER_SIZE=([初期量][,拡張量])

パラメタの意味
初期量:

バッファの初期量を1~10240で指定します。
省略した場合、32になります。

拡張量:

拡張量を1~10240で指定します。
省略した場合、32になります。

OPL_BUFFER_SIZE

同一SQL文を複数回実行するときに、最初の実行で作成した処理手順を使用することによって処理効率の向上を図っています。このSQLの処理手順を格納するバッファのサイズを指定します。この領域は、サーバ側で獲得されます。

指定形式

OPL_BUFFER_SIZE=(バッファサイズ)

パラメタの意味
バッファサイズ:

SQLの処理手順を格納するバッファのサイズを1~1280000で指定します。
単位はキロバイトです。
省略した場合、8192になります。

MAX_PARALLEL

SQL文でデータベースを並列に検索する場合の多重度です。
SQL文でデータベースを並列に検索できるのは、単一行SELECT文またはカーソル宣言で並列指定を指定した場合です。表のDSIの数が、指定した多重度よりも少ない場合は、DSIの数を多重度として並列検索を行います。

指定形式

MAX_PARALLEL=(多重度)

省略時

省略した場合は、システム用の動作環境ファイルにおけるMAX_PARALLELの指定に従って並列検索(並列クエリ)を行います。

パラメタの意味
多重度:

2~100の範囲で指定します。

PARALLEL_SCAN

アプリケーション単位またはコネクション単位に、データベースを並列に検索する(並列クエリ)かどうかを指定します。並列クエリは、以下の場合に利用できます。

指定形式

PARALLEL_SCAN=({YES | NO})

省略時

PARALLEL_SCAN=(NO)

パラメタの意味
YES:

データベースを並列に検索します。この場合、そのアプリケーションの単一行SELECT文およびOPEN文を並列検索で実行できます。
ただし、以下のどれかの条件を満たす場合、並列検索は実行されず従来のアクセス手順でデータベースにアクセスします。

  • 表がDSI分割されていない、または1つのDSIに対するアクセスの場合

  • クラスタキーを利用したデータベースアクセスが可能な場合

  • 探索条件にROW_IDを指定した検索の場合

  • インデックスを利用したデータベースアクセスが可能な場合

NO:

データベースを並列に検索しません。

R_LOCK

占有の単位を行にするかどうかを指定します。
R_LOCKにYESが指定された場合、以下の指定はできません。

指定形式

R_LOCK=({YES | NO})

省略時

システム用の動作環境ファイルの、R_LOCKの指定値

パラメタの意味
YES:

占有の単位を行にします。

NO:

占有の単位は、DSO_LOCKの指定に従います。
このパラメタを指定し、かつDSO_LOCKが指定されていない場合は、Symfowareによって自動的に占有の単位が選択されます。非同期アプリケーション連携実行基盤を利用する場合には、“NO”は指定しないでください。

RESULT_BUFFER

FETCH文によってデータを取り出すときの性能を良くするため、複数の行を一度に取り出します。この行を格納するバッファの数とサイズを指定します。バッファサイズを大きくするほど、FETCHの性能が良くなります。また、1つのカーソルが1つのバッファを使用するので、複数のバッファを用意すれば、複数のカーソルの操作の性能を良くすることができます。バッファを使用しない場合は、個数に0を指定します。単位はキロバイトです。この領域は、クライアント側とサーバ側で獲得されます。

指定形式

RESULT_BUFFER=(個数,サイズ)

パラメタの意味
個数

使用するバッファの個数を0~255で指定します。
省略した場合、2になります。

サイズ

使用するバッファのサイズを1~10240で指定します。
単位はキロバイトです。
省略した場合は、32になります。