システムグローバルエリア

Oracle社が開発したデータベース管理システムでは、システム・グローバル領域SGA )は、単一のOracleデータベース・インスタンスに属するすべてのプロセスによって共有されるシステム・メモリ( RAM )の一部です。SGAには、インスタンスの動作に必要なすべての情報が含まれています。

コンポーネント

一般に、SGA は次のものから構成されます。

  • バッファキャッシュ:データファイルから読み取ったデータブロックのコピーを保持する[ 1 ]
  • ディクショナリキャッシュ:アカウント、データファイル、セグメント、エクステント、テーブル、権限などのデータディクショナリテーブルに関する情報を保持します。
  • REDOログバッファ:オンラインREDOログファイルへの書き込みに備えて、コミット済みと未コミットの両方のデータベーストランザクションに関する情報が格納されます。
  • 共有プール: ディクショナリまたは行キャッシュ、ライブラリ キャッシュ、カーソル定義、および共有 SQL を保持します。
  • Java プール: Javaステートメントを解析するための情報を保持します。
  • 大規模プール: ユーザーグローバルエリア (UGA) を含む)
  • ストリーム プール: これはデータベースへのリモート接続です。

構成

Oracle Databaseバージョン10g以降では、自動メモリ管理(AMM)によりSGAの簡素化された動的な構成が可能になりました。[ 2 ]

顆粒

Oracle DBMSでは、インスタンスの起動時にOracleサーバーがシステム・グローバル領域(SGA)をグラニュル単位で割り当てます。起動時に、各コンポーネントは必要な数のグラニュルを取得します。SGAはリンクされたグラニュルで構成されていると言えます。グラニュルのサイズはデータベースのバージョンによって異なり、場合によってはオペレーティングシステムによっても異なります。Oracle 9i以前では、SGAサイズが128MB未満の場合は4MB、それ以外の場合は16MBです。それ以降のリリースでは、SGAサイズが1GB未満の場合は通常4MB、それ以外の場合は16MBです。[ 3 ] SGAには少なくとも3つのグラニュルが必要です。1つはデータベース・バッファ・キャッシュ用、1つは共有プール領域用、もう1つはREDOログ・バッファ用です。現在のグラニュルのサイズに関する情報は、動的ビューV$SGAINFOを問い合せることでいつでも取得できます。[ 4 ]

参照

さらに読む

参考文献

  1. ^ Oracle Database Concepts 11g Release 1 (11.1)「メモリ・アーキテクチャ」
  2. ^ Burleson, Donald K. 編 (2003). Oracle Database 10g の新機能: Oracle 10g リファレンス (高度なチューニングと管理用) . Oracle In-Focus. Rampant TechPress. p. 22. ISBN 9780974071602. 2012年11月22日取得。Oracle Database 10g [...] には、[...] パラメータ [...] sga_targetの形式で自動メモリ管理 (AMM) 機能があり、[...] データ バッファ、共有プール、およびログ バッファ間での RAM の割り当てを自動化します。
  3. ^ 「Granule」 . Oracle FAQ . 2009年4月11日閲覧。
  4. ^ 「Oracle 10gのグラニュルサイズの決定」 SUPINFO Oracle Laboratory . 2009年4月11日閲覧。