System Global Area

Un article de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 10 septembre 2017 à 16:42 et modifiée en dernier par Bot de pluie (discuter | contributions). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

Dans Oracle Database, le System Global Area (SGA) est la partie de la mémoire qui est partagée par tous les processus appartenant à l'instance Oracle.

Composants

La SGA est constituée du

  • Cache du dictionnaire de données : information sur les comptes oracle, les fichiers de données, les segments, les extent, les tables, les privilèges systèmes…etc.
  • La mémoire tampon des redo : elle contient des informations sur les transactions qui ont été validées, mais pas encore écrites dans les fichiers de données
  • La mémoire tampon des données : elle contient une copie des données qui ont été lues dans les fichiers de données[1]
  • shared pool, contenant notamment des informations sur les requêtes SQL qui ont été récemment exécutées
  • large pool ; incluant la User Global Area (UGA)
  • Java pool

Configuration

La taille de la SGA est affichée lors de l'étape de démarrage de la base de données (le startup), plus précisément sur la toute première étape de ce démarrage (étape dite startup nomount).

Les paramètres globaux de la SGA sont notamment :

  • SGA_MAX_SIZE
  • SGA_TARGET
  • Les booléens LOCK_SGA et PRE_PAGE_SGA

Au sein de la SGA, il est possible de définir la taille mémoire de chacun de ses composants, mais, en pratique, il vaut mieux laisser Oracle calculer automatiquement la taille de chacun de ses composants.

Voir aussi

Notes

  1. "Memory Architecture" in Oracle Database Concepts 11g Release 1 (11.1)