Vous êtes sur la page 1sur 48

Composants de l'architecture Oracle

Copyright Oracle Corporation, 2001. Tous droits rservs.


Objectifs

A la fin de ce chapitre, vous pourrez :


dcrire l'architecture Oracle et ses principaux
composants
rpertorier les structures utilises dans la
connexion d'un utilisateur une instance Oracle

1-2 Copyright Oracle Corporation, 2001. Tous droits rservs.


Prsentation des principaux composants
Instance
Processus
utilisateur Zone de mmoire Mmoire SGA
partage

Cache Cache de
tampons de Tampon de
"library" journalisation
la base
Cache du de donnes
Processus
serveur dictionnaire Zone de mmoire
Zone de
de donnes mmoire Java LARGE POOL
PGA

PMON SMON DBWR LGWR CKPT Autres

Fichiers de Fichiers de Fichiers de


donnes contrle journali- Fichiers de
Fichier de
sation Journalisation
paramtres
archivs
Fichier
de mots
de passe
Base de donnes

1-3 Copyright Oracle Corporation, 2001. Tous droits rservs.


1-4 Copyright Oracle Corporation, 2001. Tous droits rservs.
Serveur Oracle

Un serveur Oracle :
Serveur Oracle
est un systme de gestion de
base de donnes qui offre
une mthode de gestion des
informations ouverte,
complte et intgre,
est constitu d'une instance
et d'une base de donnes
Oracle..

1-5 Copyright Oracle Corporation, 2001. Tous droits rservs.


Instance Oracle

Une instance Oracle :


permet d'accder une base de donnes Oracle,
n'ouvre qu'une seule base de donnes,
est constitue de structures de processus d'arrire-
plan et de structures mmoire.
Instance
Zone de mmoire Mmoire SGA
partage
Structures
Cache
Cache Tampon de mmoire
de tampons
"library" journalisation
de la base
Cache du de donnes
dictionnaire Zone de mmoire
Zone de
de donnes mmoire Java LARGE POOL
Structures
PMON SMON DBWR LGWR CKPT Autres de processus
d'arrire-plan

1-6 Copyright Oracle Corporation, 2001. Tous droits rservs.


Etablir une connexion et crer une session

Se connecter une instance Oracle :


Etablir une connexion utilisateur
Crer une session

Processus
Connexion serveur
tablie Session cre
Processus Serveur Oracle
utilisateur

Utilisateur de la base de donnes

1-7 Copyright Oracle Corporation, 2001. Tous droits rservs.


1-8 Copyright Oracle Corporation, 2001. Tous droits rservs.
Base de donnes Oracle

Une base de donnes Oracle :


est un ensemble de donnes traites comme une
seule et mme entit,
est constitue de trois types de fichier.

Base de donnes Oracle

Fichier de Fichiers Fichiers Fichiers Fichiers de


de de de
paramtres donnes contrle journa- Journalisation
Fichier lisation archivs
de mots
de passe

1-9 Copyright Oracle Corporation, 2001. Tous droits rservs.


Structure physique

La structure physique comprend trois types de


fichier :
Fichiers de contrle
Fichiers de donnes
Fichiers de journalisation
En-tte
Fichiers
Fichiers de
de
Donnes
contrle
Fichiers de (incluent le
journali- dictionnaire
sation de donnes)
en ligne

1-10 Copyright Oracle Corporation, 2001. Tous droits rservs.


Structure mmoire

La structure mmoire d'Oracle est constitue des deux


zones de mmoire suivantes :
la mmoire SGA, qui est alloue au dmarrage de
l'instance et qui est une composante fondamentale
d'une instance Oracle
la mmoire PGA, qui est alloue au dmarrage du
processus serveur

1-11 Copyright Oracle Corporation, 2001. Tous droits rservs.


Mmoire SGA

La mmoire SGA est constitue de plusieurs


structures mmoire :
la zone de mmoire partage,
le cache de tampons de la base de donnes,
le tampon de journalisation,
d'autres structures (gestion des verrous externes
(lock) et des verrous internes (latch), donnes
statistiques, par exemple).
Deux structures mmoire supplmentaires peuvent
galement tre configures dans la mmoire SGA :
la zone de mmoire LARGE POOL,
la zone de mmoire Java.

1-12 Copyright Oracle Corporation, 2001. Tous droits rservs.


1-13 Copyright Oracle Corporation, 2001. Tous droits rservs.
Mmoire SGA

Dynamique
Taille dfinie l'aide du paramtre SGA_MAX_SIZE
Allocation et suivi sous forme de granules par les
composants de la mmoire SGA
Allocation de mmoire virtuelle contigu
Taille des granules dfinie en fonction de la valeur
totale estime de SGA_MAX_SIZE

1-14 Copyright Oracle Corporation, 2001. Tous droits rservs.


Zone de mmoire partage
Elle permet de stocker :
les dernires instructions SQL excutes,
les dernires dfinitions de donnes utilises.
Elle est constitue de deux structures mmoire cls
lies aux performances :
Cache "library"
Cache du dictionnaire de donnes
Sa taille est dfinie par le paramtre
SHARED_POOL_SIZE. Zone de mmoire
partage
Cache
"library"
ALTER SYSTEM SET Cache du
SHARED_POOL_SIZE = 64M; dictionnaire
de donnes

1-15 Copyright Oracle Corporation, 2001. Tous droits rservs.


Cache "library"

Le cache "library" conserve des informations sur


les dernires instructions SQL et PL/SQL utilises.
Il permet le partage des instructions frquemment
utilises.
Il est gr par un algorithme LRU.
Il est compos de deux structures :
la zone SQL partage,
la zone PL/SQL partage.
Sa taille dpend du dimensionnement de la zone de
mmoire partage.

1-16 Copyright Oracle Corporation, 2001. Tous droits rservs.


Cache du dictionnaire de donnes

Le cache du dictionnaire de donnes contient les


dernires dfinitions utilises dans la base.
Il contient des informations sur les fichiers, les tables,
les index, les colonnes, les utilisateurs, les privilges
et d'autres objets de la base de donnes.
Au cours de l'analyse, le processus serveur recherche
les informations dans le cache du dictionnaire pour
rsoudre les noms d'objet et valider l'accs.
La mise en mmoire cache des informations du
dictionnaire de donnes rduit le temps de rponse
aux interrogations et aux instructions LMD.
La taille du cache dpend du dimensionnement de la
zone de mmoire partage.

1-17 Copyright Oracle Corporation, 2001. Tous droits rservs.


Cache de tampons de la base de donnes

Ce cache conserve des copies des blocs de


donnes extraits des fichiers de donnes.
Il permet des gains de performances considrables
lors de l'obtention et de la mise jour de donnes.
Il est gr par un algorithme LRU.
Le paramtre DB_BLOCK_SIZE dtermine la taille du
bloc principal.
Cache
de tampons
de la base
de donnes

1-18 Copyright Oracle Corporation, 2001. Tous droits rservs.


Cache de tampons de la base de donnes

Ce cache est compos de sous-caches


indpendants :
DB_CACHE_SIZE
DB_KEEP_CACHE_SIZE
DB_RECYCLE_CACHE_SIZE
Il peut tre redimensionn dynamiquement :
ALTER SYSTEM SET DB_CACHE_SIZE = 96M;

Le paramtre DB_CACHE_ADVICE peut tre dfini


pour collecter des statistiques permettant de
prvoir le comportement du serveur en fonction de
diffrentes tailles de cache.
La vue V$DB_CACHE_ADVICE affiche les statistiques
collectes.
1-19 Copyright Oracle Corporation, 2001. Tous droits rservs.
1-20 Copyright Oracle Corporation, 2001. Tous droits rservs.
Tampon de journalisation

Il enregistre toutes les modifications apportes aux


blocs de donnes de la base.
Sa principale fonction est la rcupration de donnes.
Les modifications enregistres constituent des entres
de journalisation.
Les entres de journalisation contiennent des
informations permettant de reconstruire des
modifications.
La taille du tampon est
Tampon de
dfinie par le paramtre journalisation
LOG_BUFFER.

1-21 Copyright Oracle Corporation, 2001. Tous droits rservs.


Zone de mmoire LARGE POOL
Zone facultative de la mmoire SGA
Elle rduit la charge de la zone de mmoire
partage.
la mmoire alloue par session (UGA) au serveur
partag
les processus serveur d'E/S
les oprations de sauvegarde et de restauration ou
RMAN
les mmoires tampon des messages d'excution en
parallle
PARALLEL_AUTOMATIC_TUNING = TRUE
Elle n'utilise pas de liste LRU.
Sa taille est dfinie par le paramtre
LARGE_POOL_SIZE.

1-22 Copyright Oracle Corporation, 2001. Tous droits rservs.


1-23 Copyright Oracle Corporation, 2001. Tous droits rservs.
Zone de mmoire Java

La zone de mmoire Java rpond aux besoins


d'analyse des commandes Java.
Elle est ncessaire si Java est install et utilis.
Sa taille est dfinie par le paramtre
JAVA_POOL_SIZE.

1-24 Copyright Oracle Corporation, 2001. Tous droits rservs.


Mmoire PGA

Mmoire rserve chaque


processus utilisateur qui se PGA
connecte une base Processus
de donnes Oracle. serveur

Elle est alloue lorsqu'un


processus est cr.
Processus
Elle est libre la fin du utilisateur
processus.
Elle n'est utilise que par un
processus.

1-25 Copyright Oracle Corporation, 2001. Tous droits rservs.


1-26 Copyright Oracle Corporation, 2001. Tous droits rservs.
1-27 Copyright Oracle Corporation, 2001. Tous droits rservs.
Structure de processus

Oracle utilise diffrents types de processus :


le processus utilisateur, qui est dmarr au moment
o un utilisateur de la base de donnes tente de se
connecter au serveur Oracle,
le processus serveur, qui tablit la connexion
l'instance Oracle et dmarre lorsqu'un utilisateur
ouvre une session,
les processus d'arrire-plan, lancs au dmarrage
d'une instance Oracle.

1-28 Copyright Oracle Corporation, 2001. Tous droits rservs.


Processus utilisateur

Programme qui demande une interaction avec le


serveur Oracle.
Ce processus doit d'abord tablir une connexion.
Il n'entre pas directement en interaction avec le
serveur Oracle.
Processus
serveur
Processus
utilisateur
Connexion
tablie

Utilisateur de la base de donnes

1-29 Copyright Oracle Corporation, 2001. Tous droits rservs.


Processus serveur

Programme qui entre directement en interaction avec


le serveur Oracle.
Il rpond aux appels gnrs et renvoie les rsultats.
Il peut s'agir d'un serveur ddi ou d'un serveur
partag.
Processus
Connexion serveur
tablie Session cre
Processus Serveur Oracle
utilisateur

Utilisateur de la base de donnes

1-30 Copyright Oracle Corporation, 2001. Tous droits rservs.


Processus d'arrire-plan

Grent et appliquent les relations entre les structures


physiques et les structures mmoire.
Processus d'arrire-plan obligatoires
DBWn PMON CKPT
LGWR SMON
Processus d'arrire-plan facultatifs
ARCn LMDn RECO
CJQ0 LMON Snnn
Dnnn Pnnn
LCKn QMNn

1-31 Copyright Oracle Corporation, 2001. Tous droits rservs.


Processus database writer (DBWn)
Instance DBWn crit dans les cas
Mmoire SGA suivants :
Cache point de reprise
de tampons
de la base seuil des tampons "dirty"
de donnes atteint
aucune mmoire tampon
DBWn disponible
temps imparti dpass
demande de ping RAC
tablespace hors ligne
Fichiers Fichiers Fichiers tablespace en lecture seule
de de de
donnes contrle journa- DROP ou TRUNCATE sur une
lisation
table
Base de donnes BEGIN BACKUP sur un
tablespace

1-32 Copyright Oracle Corporation, 2001. Tous droits rservs.


Processus LGWR (Log Writer)
Instance LGWR crit dans les cas
Mmoire SGA suivants :
Tampon de validation
journali-
sation un tiers du cache est
occup
DBWn LGWR la journalisation atteint
1 Mo
toutes les trois
secondes
Fichiers Fichiers Fichiers
de de de avant que le processus
donnes contrle journa-
lisation DBWn ne procde une
opration d'criture
Base de donnes

1-33 Copyright Oracle Corporation, 2001. Tous droits rservs.


Processus SMON (System Monitor)
Instance Responsabilits :
Mmoire SGA Rcupration de l'instance :
rimplmente des
modifications dans les
fichiers de
journalisation,
SMON ouvre la base de
donnes pour permettre
l'accs aux utilisateurs,
Fichiers Fichiers annule les transactions
Fichiers
de de de non valides.
donnes contrle journa-
lisation Fusion de l'espace libre
Libration des segments
Base de donnes
temporaires segments

1-34 Copyright Oracle Corporation, 2001. Tous droits rservs.


Processus PMON (Process Monitor)
Instance Suite l'chec de
Mmoire SGA processus, PMON
excute des oprations
de nettoyage :
annule la transaction
libre des verrous
PMON
libre d'autres
ressources
redmarre les
Mmoire PGA rpartiteurs
interrompus

1-35 Copyright Oracle Corporation, 2001. Tous droits rservs.


Processus CKPT (Checkpoint)
Instance Ce processus est charg :
Mmoire SGA de signaler DBWn aux
points de reprise,
de mettre jour les
en-ttes de fichiers
de donnes avec les
DBWn LGWR CKPT
informations sur le
point de reprise,
de mettre jour les
Fichiers Fichiers Fichiers fichiers de contrle
de de de
donnes contrle journa- avec les informations
lisation
sur le point de reprise.
Base de donnes

1-36 Copyright Oracle Corporation, 2001. Tous droits rservs.


1-37 Copyright Oracle Corporation, 2001. Tous droits rservs.
Processus ARCn (processus d'archivage)

Processus d'arrire-plan facultatif


En mode ARCHIVELOG, il archive automatiquement
les fichiers de journalisation en ligne
Il enregistre toutes les modifications apportes la
base de donnes

Fichiers Fichiers ARCn Fichiers


Fichiers de
de de de
donnes contrle journa- journali-
lisation sation
archivs

1-38 Copyright Oracle Corporation, 2001. Tous droits rservs.


1-39 Copyright Oracle Corporation, 2001. Tous droits rservs.
Structure logique

La structure logique dfinit le mode d'utilisation de


l'espace physique d'une base de donnes.
Cette structure possde une hirarchie compose
de tablespaces, de segments, d'extents et de blocs.

Tablespace
Fichier de donnes
Segment Segment

Extent Blocs

1-40 Copyright Oracle Corporation, 2001. Tous droits rservs.


1-41 Copyright Oracle Corporation, 2001. Tous droits rservs.
1-42 Copyright Oracle Corporation, 2001. Tous droits rservs.
Traiter les instructions SQL

Connexion une instance via :


le processus utilisateur,
le processus serveur.
Les composants du serveur Oracle utiliss
dpendent du type d'instruction SQL :
Les interrogations renvoient des lignes.
Les instructions LMD consignent les modifications.
La validation garantit la rcupration de la transaction.
Certains composants du serveur Oracle
n'interviennent pas dans le traitement des
instructions SQL.

1-43 Copyright Oracle Corporation, 2001. Tous droits rservs.


1-44 Copyright Oracle Corporation, 2001. Tous droits rservs.
Synthse

Ce chapitre vous a prsent :


les fichiers de base de donnes : fichiers de
donnes, fichiers de contrle, fichiers de
journalisation en ligne
les structures mmoire SGA : cache de tampons de
la base de donnes, zone de mmoire partage et
tampon de journalisation
les principaux processus d'arrire-plan :
DBWn, LGWR, CKPT, PMON et SMON
l'utilisation du processus d'arrire-plan ARCn
les processus d'arrire-plan facultatifs et
conditionnels
la hirarchie logique

1-45 Copyright Oracle Corporation, 2001. Tous droits rservs.


Prsentation de l'exercice 1

Cet exercice porte sur :


les composants de l'architecture
les structures utilises dans la connexion d'un
utilisateur une instance Oracle

1-46 Copyright Oracle Corporation, 2001. Tous droits rservs.


1-47 Copyright Oracle Corporation, 2001. Tous droits rservs.
1-48 Copyright Oracle Corporation, 2001. Tous droits rservs.