PGA(プログラムグローバル領域)難易度 標準無料
PGA(Program Global Area)に関する説明として最も適切なものを選べ。(単一選択)
- APGA はサーバープロセス(またはバックグラウンドプロセス)1つごとに確保される非共有メモリで、ソート領域やカーソル状態など、そのプロセス固有の情報を保持する
- BPGA はインスタンス起動時に1つだけ確保され、すべてのセッションのサーバープロセスから共有・参照される
- CPGA には REDOログバッファと共有プールが含まれ、SGA と同様にインスタンス全体で1つの領域として管理される
- DPGA はディスク上の永続ファイルであり、インスタンスを再起動してもその内容は保持される
正解・解説・誤答理由・ひっかけを見る▼ open
✓ 正解:AAI作成・独立検証済
解説
PGA(Program Global Area)は、サーバープロセス(またはバックグラウンドプロセス)1つにつき1つ確保される非共有メモリ領域である。 主に次のようなセッション固有・プロセス固有の情報を保持する。
- ソート領域(sort area):
ORDER BY・GROUP BY・ハッシュ結合等で使う作業領域。 - セッション情報・カーソル状態:オープン中のカーソルの実行状態など。
- スタック領域:セッションのローカル変数など。
SGA がすべてのプロセスから共有されるのに対し、PGA はそのプロセス自身だけがアクセスできる点が本質的な違いである。 専用サーバー(dedicated server)構成では、クライアント接続ごとに専用サーバープロセスが起動し、それぞれが自分専用の PGA を持つ。
サイズは自動 PGA 管理(PGA_AGGREGATE_TARGET)によってインスタンス全体で動的に調整されるのが一般的である。
- B「すべてのプロセスから共有される」のは SGA の性質。PGA はプロセスごとに個別に確保される非共有メモリである。
- CREDOログバッファと共有プールは SGA の構成要素であり、PGA には含まれない。PGA と SGA の内容を取り違えている。
- DPGA は他のインスタンスメモリ構造と同様揮発性のメモリであり、ディスク上の永続ファイルではない。プロセス終了とともに解放される。
ひっかけ: 「PGA は全セッションで共有される」という誤解(B)。共有されるのは SGA であり、PGA はプロセスごとに専有される点が対比の核心。
AIが作成し、独立した検証を経た解説です(有資格者による監修は経ていません)