データベースの稼働状況を診断共有するサイト パフォーマンスセラピー
Statspackとは Statspack設定 statspackでの情報収集 statspackレポートの出力 便利スクリプト Oracleチューニング講座


                                  
第14章 共有サーバー構成での共有プールの割当てについて学ぶ
10章で共有プールの構成や利用について復習しましたが、共有サーバー構成の場合は共有プールの使われ方が異なります。具体的には共有サーバー構成(MTS構成)で接続を行った場合は、ソート領域やプライベートSQL領域を含むユーザー・セッションとカーソル状態に関する情報(UGA)は、PGAではなく共有プールに格納されます。そのため、ライブラリ・キャッシュやディクショナリ・キャッシュに使用可能な共有プールのメモリーが減少してしまい、パフォーマンス低下の原因となる可能性が出てきます。
その対処策として共有プールとは別にラージ・プールという領域を用意するという方法があります。ラージ・プールを用意すると共有サーバー・セッションのUGAはラージ・プールを使用しますので、共有プールのメモリーが減少する事がなくパフォーマンス低下を防ぐ事が可能です。よって共有サーバー関連のUGAの割当てには、共有プールではなくラージ・プールの使用をお薦めします。
本章では、共有サーバー構成における共有プールの割り当て方について復習しましょう。

ラージ・プールの設定
ラージ・プールは、LARGE_POOL_SIZEパラメータによってサイズを設定します。
ラージプールはパラレル問合せを使用する際や、Recovery Manager使用時のI/Oバッファとしても使用されます。
表1に設定概要を記します。
表1
LARGE_POOL_SIZEパラメータ
概要 ラージ・プールのサイズを設定する
構文 LARGE_POOL_SIZE = n [ K | M | G ]
デフォルト 以下の両方に該当する場合は0
■パラレル実行によってプールが要求されない
■DBWR_IO_SLAVESパラメータが設定されていない
該当しない場合は、以下のパラメータから導出される
・PARALLEL_MAX_SERVERS、PARALLEL_THREADS_PER_CPU、
 CLUSTER_DATABASE_INSTANCES、DISPATCHERS、DBWR_IO_SLAVES
変更の可/不可 可能:ALTER SYSTEM


■設定のガイドライン
まず、V$SESSTATビューの'session uga memory'統計を確認し、UGAで使用されているサイズを調べます。V$SESSIONビューのSERVER列がNONEまたはSHAREDになっている列が、共有サーバー・セッションでUGAで使用されています。
そして共有サーバー・セッションの合計のUGAサイズより大きいサイズをラージ・プールに設定してください。

以下の図1、図2にラージ・プールが設定されていない時と設定されている時の、共有プールの使用状況について説明します。

図1:ラージ・プールが設定されていない時

この場合、UGAは共有プールに獲得されます。
そのため、共有プール内の再利用可能なメモリーが減少してしまい、パフォーマンスの低下を引き起こす可能性があります。

図2:ラージ・プールが設定されている時

ラージ・プールのサイズは、上記で説明したLARGE_POOL_SIZEパラメータで設定します。
ラージ・プールの設定がされている場合は、UGAはラージ・プールに獲得されますので、共有プール内の再利用可能メモリーに影響を与えないので、パフォーマンス低下を防ぐ事ができます。

SORT_AREA_RETAINED_SIZEパラメータ
共有サーバー・セッションによるソートは、SORT_AREA_RETAINED_SIZEで指定したサイズまで共有メモリーを使用します。
しかし、それ以上の領域が必要になるとSORT_AREA_SIZEパラメータの設定値まで、共有サーバー・プロセスのPGAにソート領域がとられます。
そのため、SORT_AREA_RETAINED_SIZEの値をSORT_AREA_SIZEよりも小さく設定すれば、共有サーバー・セッションで使用される共有プール内の領域を抑えることができます。

以下の表2にSORT_AREA_RETAINED_SIZEパラメータの設定概要を記します。
表2
SORT_AREA_RETAINED_SIZEパラメータ
概要 ソート完了後に保持されるUGAの最大サイズを指定
構文 SORT_AREA_RETAINED_SIZE = 整数
デフォルト SORT_AREA_SIZEから導出される
変更の可/不可 可能:ALTER SYSTEM...DEFERRED、ALTER SESSION

以上で共有サーバー構成における共有プールの割り当てに関する説明は終了です。
共有サーバー構成をされている場合、ご参考にしていただけたらと思います。
第15章では、データベース・バッファ・キャッシュのチューニングについて学習します。

               
               第15章 データベース・バッファ・キャッシュのチューニングを学ぶ