BLOGスタッフブログ

システムエンジニア

Yuta Akutsu

2015.10.30 システム

SGAとPGA

こんにちは、エンジニアの阿久津です。

前回は、ORACLEMASTERについて説明しましたが、 今回は、試験の範囲に含まれるSGAとPGAついて書いていきます。

1)「SGA」「PGA」とは?


SGA(System Global Area)

SGAコンポーネントと呼ばれる共有メモリー構造のグループで、
1つのOracle Databaseインスタンスに関するデータと制御情報が保存されています。

すべてのサーバー・プロセスおよびバックグラウンド・プロセスで共有されます。

格納されるデータの例は、キャッシュ・データ・ブロックや共有SQL領域等です。

PGA(Program Global Area)

サーバー・プロセスのデータおよび制御情報が含まれるメモリー領域です。

これはサーバー・プロセスの開始時にOracle Databaseによって 作成される非共有メモリーです。

PGAへのアクセスは、サーバー・プロセスごとに排他的です。 各サーバー・プロセスごとに1つのPGAが存在します。

バックグラウンド・プロセスにも独自のPGAが割り当てられます。

Oracle Databaseインスタンスに連結されるすべてのバックグラウンドおよびサーバー・プロセスに割り当てられる PGAメモリーの合計はインスタンスPGAメモリー合計と呼ばれ、個々のPGAの集合はインスタンスPGA合計、 または単にインスタンスPGAと呼ばれます。

うん、なんでしょう少し分かりにくい説明ですよね・・・・・

ざっくり説明すると、
SGA=共有エリア PGA=個人エリア
といった形になります。

2)使うところは?

SGAにはみんなで使う情報、基本的にはテーブルのデータや、インデックス等が ほとんどを占め、SQLの実 行計画なども含まれます。

PGAにはスタック領域、セッション情報、カーソルの状態、 ソート領域などとなっています。

説明は以上となります。

次回はまた別の用語について書いていこうと思います。

Yuta Akutsuが書いた他の記事

見積もり・ご依頼など、
お気軽にご相談ください

本サイトはユーザーエクスペリエンスの向上などを目的に、Cookieを使用しています。
右記のバナーで「同意する」をクリックする、または本サイトを利用することにより、
お客様は弊社のCookieポリシーに同意したことになります。

同意します