Etude de la structure physique dynamique




La zone mémoire



Oracle découpe la zone mémoire qui lui est allouée en trois parties :

 

 

 

 




Description de la PGA



Lors d'une interrogation, Oracle alloue une partie de mémoire centrale pour gérer la requête. Cette zone est prise dans la PGA (program global area). Elle permet le stockage du processus client et de son contexte, en terme Oracle.

 

L'ordre SQL est sauvegardé dans cette zone avant d'être envoyé au SGBD, une fois la réponse obtenue, elle sera envoyée à l'utilisateur (local ou distant) et cette zone sera alors libérée.

 

Cette zone n'est pas dynamique et dépend de certains paramètres d'initialisation de l'instance. Plus les interrogations simultanées peuvent être nombreuses, plus cette zone doit être conséquente.

 




Description de la SGA



Oracle utilise une zone interne de la mémoire centrale de l'ordinateur pour gérer les données et les ordres. Cette zone s'appelle la SGA (system global area).

 

Elle se décompose en quatre parties :

  • les buffers cache de la base de données, Oracle y mémorise les plus récents blocs de données utilisés. Les données présentes dans ces buffers ne sont peut être pas encore mises à jour sur le disque. Ces buffers servent aussi à mémoriser une zone spécifique appelée le Rollback segment,



  • la zone de partage des ordres SQL (texte des ordres), Oracle y mémorise le plan d'exécution des ordres SQL. Il y effectue une analyse syntaxique et sémantique des ordres. Elle sert de zone tampon des ordres qui vont être exécutés par le SGBD,



  • les buffers Redo Log qui conservent les traces des transactions. Ils sont en relation avec les fichiers de redo log.



  • les zones de rollback qui conservent les transactions des utilisateurs tant que l'ordre passé n'est ni validé (action de «commit»), ni invalidé (action de «rollback»).

 

Cette zone globale est allouée lors du démarrage de l'instance et libérée lors de l'arrêt de l'instance.

 

Le dimensionnement de cette zone peut être important pour les performances de la base. Augmenter la taille de certaines zones de la SGA permet de diminuer les entrées/sorties disque, par exemple.

 





Description de la zone de tri



Cette région est utilisée lors du traitement des données présentes dans la base. La zone mobilisée s'agrandit en fonction des besoins des utilisateurs mais est limitée par le paramètre SORT_AREA_SIZE (se référer au chapitre traitant de l'Optimisation).

 

Lors d'un tri d'une table, le SGBD va tenter de mettre toutes les informations en mémoire, pour que le processus prenne un minimum de temps. Le SGBD va ainsi stocker un maximum de données dans cette zone. Si toutefois, toutes les informations ne peuvent tenir dans cette zone, il utilisera une partie des data files et travaillera donc sur le disque dans un espace dit temporaire («temporary segment»).

 




Surveillance de l'occupation de l'espace mémoire



Lors de l'activation d'une base de données, Oracle indique la taille des diverses zones que nous venons de décrire. L'administrateur va voir apparaître ces paramètres dès le démarrage de la base de données :

 

 

    Démarrage d'une base de données






Retour au sommaire   Page précédente   Début de page   Page suivante   Glossaire