5.3 La base de données oracle
Dans l'architecture d'une base de données Oracle, nous
distinguons entre structures d'une base de données logique et physique
qui construit une base de données.
Les structures logiques décrivent des zones logiques de
stockage (nom d'espaces) où les objets tels que les tables peuvent
être stocker, par contre, la structure physique correspond à
l'utilisation des objets du système d'exploitation, elle est
donc en étroite relation avec ce dernier.
5.3.1. La structure logique d'une base de données
: La structure logique inclut: Objets complexes : Les
objets « complexes » sont les suivants :
Schéma : c'est un ensemble d'objets. Il
contient les objets suivants :
Tables : elles représentent la
structure élémentaire du SGBD. Elles sont formées de
lignes et de colonnes. Une table est enregistrée dans un tablespace;
souvent, plusieurs tables partagent un tablespace.
Vues : Une vue est une fenêtre
sur une table ou plus. Une vue n'enregistre pas de données; il
présente les données de la table. Les vues sont
utilisées typiquement pour simplifier l'accès aux données
par les utilisateurs en fournissant des informations limitées d'une
table.
Séquence : c'est une suite de
numéros uniques générés par le SGBD.
Unités de programmes: ils regroupent un
ensemble de procédures et fonctions gérées par le SGBD. On
parle de package, procédures, fonctions ou triggers.
Index, cluster, et hash cluster : les clusters
sont des regroupements de tables souvent accédées en
simultané, leurs temps d'accès s'en trouvent
améliorés.
Types objets : ces informations
définissent de nouveaux types que se crée le développeur.
Ces types pourront être utilisés pour créer des tables
utilisant directement ce nouveau type de données.
Objets simples : Les objets de type simple sont
les suivants :
1. Tablespaces :
Un Tablespaces est une division logique d'une base de
données, Tous les objets de la base de données sont logiquement
Enregistrer dans un tablespace, Chaque base de données a au moins un
tablespace. Le tablespace du SYSTÈME, qui contient le dictionnaire de
données. Les autres tablespaces peuvent être créés
et peuvent être utilisés pour différentes applications ou
tâches.
Il est conseillé de disposer d'au moins deux
tablespaces : un pour le système et l'autre pour les
données.
|
Le tablespace permet de:
o Limiter l'utilisation de l'espace par
utilisateur (quota). L'administrateur peut induire
des limites de l'utilisation de l'espace disponible pour chaque utilisateur sur
un tablespace donné.
o sauvegarder et restaurer des informations
(c'est l'unité de base de la sauvegarde).
On essaiera donc de rendre cohérent le contenu d'un
tablespace, l'administrateur y
regroupera des informations de même type (toutes les
informations d'une application,
par exemple) ou possédant des caractéristiques de
« variation » commune.
o Contrôler la disponibilité des
données. Ce contrôle est effectué par la mise
online
ou offline des tablespaces individuel.
o Stocker des informations sur plusieurs disques
(répartition des charges
disque).ce qui Concrétise l'indépendance
physique de la base de données
.
Figure 04 : l'indépendance physique par les
tablespaces.
Le tablespace système:Le
tablespace système contient :
· le dictionnaire de données.
· le segment de rollback.
· les zones de code.
· des zones temporaires qui lui serviront d'extension quand
la mémoire centrale (pour la zone de tri) sera saturée (sorte de
zone de « swap » pour Oracle).
2. Segments:
Si un objet de la base de données (par exemple, une
table ou un cluster) est créé, automatiquement une portion du
tablespace est allouée, Cette portion est appelée un segment. En
effet une table est constituée d'au moins deux segments : les data
segments et le rollback segment. Deux autres segments peuvent apparaître
dans une table : l'index segment et le temporary segment.
3. Extent :
Un Extent est le plus petite unité logique de stockage
qui peut être alloué pour un objet de la base de
données, et il consiste une séquence
contiguë de blocks de données! Si la taille d'un objet de
la base de données augmente (par exemple, dû à l'insertion
d'un enregistrement dans une table), Un Extent supplémentaire est
allouée pour l'objet.
Un type spécial de segments est rollback segments. Ils
ne contiennent pas d'objet de la base de données, mais contient un
"avant image" de données modifiées pour lesquelles la transaction
modifiante n'a pas cependant s'été commettre. Les modifications
sont annulées en utilisant les rollback segments. ORACLE utilise les
rollback segments en ordre pour maintenir la lecture cohérente entre
multiples utilisateurs. En outre, les rollback segments sont utilisés
pour restaurer le "avant image" de l'enregistrement modifiés dans le cas
d'une reprise (rollback) de la transaction modifiante.
Typiquement, un tablespace supplémentaire est
utilisé pour enregistré les rollback segments, Ce tablespace peut
être définis pendant la création d'une base de
données, La taille de ce tablespace et ses segments dépend du
type et taille de transactions qui sont exécutées typiquement par
les programmes d'applications.
Une base de données consiste typiquement en un
tablespace du SYSTÈME qui contient le dictionnaire de données et
tables supplémentaire internes, procédures ...etc., et un
tablespace pour les rollback segments. Les tablespaces supplémentaires
incluent un tablespace pour les données utilisateur, un tablespace pour
les résultats de la question temporaires et les tables (TEMP), et un
tablespace a utilisé par les applications tel que SQL*Forms (OUTILS).
|