データベース・マネージャー構成ファイルの各種パラメーターは、DB2 コネクトをチューニングするために使用することができます。 これらパラメーターの変更の詳細については、管理の手引き を参照してください。
RQRIOBLK パラメーターは、ネットワーク入出力ブロックの最大サイズを設定します。 ブロック・サイズを大きくすれば、大きな要求のパフォーマンスを改善することができます。 ブロック・サイズは、通常、単一行のデータを求める要求のような、 小さな要求の応答時間には影響を与えません。
通常はブロック・サイズを大きくすると、DB2 コネクト・ワークステーション上で、 より大きなメモリーが必要になります。 このことは、作業セットのサイズを大きくし、 小さなワークステーションで大量のページングが生じる原因となります。
アプリケーションの実行に際してそれほど大きなページングを起こさない場合は、 省略時の DRDA ブロック・サイズ (32767) を使用します。 その他の場合は、ページングがなくなるまで入出力ブロック・サイズを引き下げます。 いったんページングが始まると、パフォーマンスの著しい低下が起こります。 パフォーマンス・モニター・ツール (たとえば、 UNIX ベースのシステム用の vmstat ツールや OS/2 用の SPM/2) を使用して、 システム上でページングが起きているかどうかを判別してください。 その他のツールについては、パフォーマンス・ツールを参照してください。
DIR_CACHE パラメーターにより、ディレクトリー情報がキャッシュされるかどうかが決まります。 キャッシュを使用する場合 (DIR_CACHE=YES)、 ディレクトリー・ファイルが読み込まれてメモリーにキャッシュされます。 これによって、内部ディレクトリー構造が作成され、 接続が確立されるたびにディレクトリー・ファイルを読み取るというオーバーヘッドが最小化されます。
キャッシュを使用しない場合 (DIR_CACHE=NO)、データベースへの接続が行われるたびに、 該当するディレクトリーがディスクから読み取られ、次に検索が行われます。 要求項目が見つかった後、ディレクトリー検索に関係したすべてのメモリーが解放されます。
キャッシュを使用すると、 共有ディレクトリー・キャッシュが db2start プロセスの間に作成され、 DB2 が停止する時に解放されます。 このキャッシュは、すべての DB2 サーバー・プロセス(db2agent) によって使用されます。 また、アプリケーションがデータベースへのその最初の接続命令を発行した時、 私用アプリケーション・ディレクトリー・キャッシュが作成され、 アプリケーションが終了した時に解放されます。
各キャッシュは、システム・データベース・ディレクトリー、 データベース接続サービス・ディレクトリー、 およびノード・ディレクトリーのイメージを提供します。 キャッシュは、ディレクトリー・ファイル入出力を削減し、 ディレクトリー検索を最小化することにより、接続コストを引き下げます。
キャッシュ・ディレクトリーを更新した場合、 その変更は即時にはキャッシュへ伝搬されません。 ディレクトリー項目がキャッシュ内に見つからない場合は、 元のディレクトリーが検索されます。
キャッシュによって、アプリケーションが存続する間必要とされる私用メモリーが大きくなります。 キャッシュを使用しなければ、このメモリーはディレクトリー参照処理の間だけ必要になります。 DB2 による共有メモリーの全般的な使用は少し増加します。 データベース・エージェントの間で共有されるディレクトリー情報は共有メモリーへ移動するからです。キャッシュに必要なメモリーのサイズは、 各ディレクトリー内で定義される項目の数によります。
MAXDARI および NUMDB は、DB2 コネクト・ワークステーションにローカル ・データベースがない場合は、最小値に設定してください。 このように設定すれば、リソースの消費は最小化されます。
AGENTPRI は、リモート・クライアントを使用する場合だけ適用されます。 AGENTPRI は、オペレーティング・システム・スケジューラーによって DB2 コネクト・インスタンスのエージェントに与えられる優先順位を制御します。 DB2 コネクト・インスタンスは、それが高い優先順位 (小さい番号) を持っている場合は、より大きな CPU サイクルが与えられます。 これにより、DB2 コネクト・ワークステーションで実行しているその他のプ ロセスに対しては CPU サイクル数が減ります。 たとえば、同じワークステーション上で異なる AGENTPRI を持つ高優先順位の DB2 コネクト・インスタンスと低優先順位の DB2 コネクト・インスタンスを持つことができます。
DB2 コネクトを介してクライアント・マシンからホストまたは AS/400 データベース・サーバーへつながる各接続はすべて、 DB2 コネクト・ワークステーション上で稼働するエージェントを必要とします。 MAXAGENTS については、DB2 コネクト・ワークステーションを介してホストまたは AS/400 データベース・サーバーにアクセスするリモート・クライアント接続のピーク数以上の値に設定してください。
会計ストリングの使用を決定した場合、sqlesact() API を使用すると、 DB2ACCOUNT 環境変数方式よりもパフォーマンスについて有利になります。 詳細については、DB2 ユニバーサル・データベース (OS/390 版) でのチャージバック会計の実装を参照してください。
調整済みの SQLCODE マッピング・ファイルを必要としない場合は、 省略時の SQLCODE マッピングを使用するか、 または SQLCODE マッピングをオフにすることによって、 パフォーマンスを改善することができます。 (省略時のマッピング・ファイルは、DB2 コネクト・ライブラリーに組み込まれています。 調整済みのマッピング・ファイルはディスクから読み取る必要がありますが、 これがパフォーマンスに影響を与えます。) SQLCODE マッピングの詳細については、SQLCODE マッピングを参照してください。