Cosminexus 機能解説

[目次][用語][索引][前へ][次へ]

9.10.3 ステートメントプーリング

DB Connectorを使用した場合,JDBCのAPIであるjava.sql.PreparedStatementとjava.sql.CallableStatementの再利用を行うプーリング機能を使用できます。ステートメントプーリング機能によって,PreparedStatementとCallableStatementを使用した場合のパフォーマンス向上が図れます。なお,PreparedStatementとCallableStatementのプールサイズは,DB Connectorの設定で指定します。ステートメントプーリングを使用する際のプールサイズ設定の指針については,マニュアル「Cosminexus システム設計ガイド」を参照してください。また,DB Connectorのプロパティ定義については,マニュアル「Cosminexus アプリケーション設定操作ガイド」を参照してください。

ステートメントプーリング機能を利用するには,コネクションプーリング機能を使用する必要があります。また,トランザクションサポートレベルにグローバルトランザクションを指定した場合,HiRDBのバージョンによっては利用できないことがあります。

注意
HiRDB Type4 JDBC DriverまたはCosminexus DABroker Libraryを使用する場合,PreparedStatement,CallableStatementのプールサイズに制限があります。指定できるプールサイズについては,「Cosminexus リファレンス 定義編」を参照してください。
<この項の構成>
(1) 前提条件

(1) 前提条件

トランザクションサポートレベル,コネクションプーリング使用の有無,使用するデータベースの種類との対応による,ステートメントプーリング利用について次の表に示します。

表9-33 ステートメントプーリングの利用

トランザクションサポートレベル コネクションプーリングを使用する コネクションプーリングを使用しない
HiRDB※1 Oracle SQL Server XDM/RD E2 HiRDB/Oracle/
SQL Server
トランザクションなし(NoTransaction) ×
ローカルトランザクション(LocalTransaction) ×
グローバルトランザクション(XATransaction) ※2 × × ×

(凡例) ○:利用できる  ×:利用できない

注※1
ステートメントプーリング機能を使用した状態で,定義SQLを実行しないでください。定義SQLを実行する場合,ステートメントプーリング機能は使用できません。また,定義SQLを実行する場合は,HiRDBのクライアント環境変数として「PDDDLDEAPRP=YES」を設定する必要があります。

注※2
JDBCのDatabaseMetaData#supportsStatementPooling()の戻り値がtrueの場合に,利用できます。

なお,XDM/RD E2を使用する場合は,XDM/RD E2 11-02以降のバージョンとCosminexus DABroker Library 03-13以降,またはXDM/RD E2 11-03以降のバージョンとHiRDB Type4 JDBC Driver 08-02以降を使用する場合にだけステートメントプーリング機能を使用できます。XDM/RD E2と接続する場合の設定については,マニュアル「Cosminexus システム構築ガイド」のリソースアダプタのプロパティ定義に関する説明を参照してください。