DB2 でのメモリ チューニング
IBM DB2 ではdb2pd というユーティリティを使用して、問題のトラブルシューティング、データベースの監視、データベースのパフォーマンスのチューニングに役立つ DB2 インスタンスとデータベースの統計情報を収集することを推奨しています。このユーティリティの詳細については、「DB2 のオンライン ドキュメント」をご参照ください。
DB2 のコントロール・センターには、構成アドバイザというツールもあります。このツールは、データベース環境の特定の情報を捕捉し、指定された情報に基づいてコンフィグレーション パラメータの変更をアドバイスするように設計されています。
DB2 9 では、バッファ プールおよびパッケージ キャッシュ サイズ パラメータのデフォルト設定で十分です。デフォルト設定を使用しない場合、ArcSDE に合わせた DB2 データベースのメモリのチューニングに関する推奨事項を以下に示します。
-
バッファ プールの設定
バッファ プールの設定は、パフォーマンスにとってきわめて重要です。デフォルトでは、DB2 は IBMDEFAULTBP という名前のバッファ プールを 1 つ提供します。DB2 9 のデフォルトでは、IBMDEFAULTBP が自動的にサイズ設定されます。
表スペースごとにバッファ プールを個別に作成する必要があります。データベースのスナップショットを取得して、buffer pool physical read 値を確認します。バッファ プールは、マップの再描画時の物理読み取りの数を少なく保つのに十分なサイズに設定する必要があります。
-
パッケージ キャッシュ サイズ パラメータ(PCKCACHESIZ)の適切な設定
パッケージ キャッシュ サイズは、SQL リクエストを動的および静的にキャッシュするために割り当てられるメモリの量を指定します。これは、データベースの起動時に割り当てられ、シャットダウン時に解放されます。パッケージ キャッシュから SQL ステートメントが見つからない場合は、そのステートメントをリコンパイル(動的 SQL)するか、パッケージ カタログから読み込む(静的 SQL)必要があるので、かなり時間がかかる可能性があります。DB2 9 では、PCKCACHESIZE のデフォルト パラメータ値は AUTOMATIC です。システム設定によっては、この項目の管理が不要な場合もあります。
初期サイズを 6,000 に設定し、データベースのスナップショットで package cache lookups 値と package cache insert 値を監視することをお勧めします。