……….
Introduction aux SGBDR Pour optimiser une base Oracle, il est important d’avoir une idée de la manière dont elle fonctionne. La connaissance des éléments sous-jacents à son fonctionnement permet de mieux comprendre ses comportements. C’est pourquoi nous commencerons, à ce chapitre, par vous présenter ou vous rappeler brièvement ce qu’est un SGBDR et quelques-uns des éléments qui le composent. Ces notions vous seront utiles tout au long du livre. Le but ici n’est pas de faire de vous un spécialiste du fonctionnement interne d’Oracle, mais de vous donner quelques explications sur des concepts que nous référencerons ultérieurement.
Si vous êtes DBA, vous pouvez vous rendre directement au Chapitre 2.
1.1 Qu’est-ce qu’une base de données ?
Une base de données est un ensemble d’informations structurées. Elle peut être de nature :
■ hiérarchique ;
■ relationnelle ;
■ objet ;
■ documentaire ;
Actuellement, le marché est principalement composé de bases de données relation-nelles avec, parfois, une extension objet. Cet ouvrage traite exclusivement de ce type de bases.
Dans les bases de données relationnelles, les données sont organisées dans des tables à deux dimensions, conformément au modèle relationnel que nous étudierons au Chapitre 2.
1.1.1 Système de gestion des bases de données
Un SGBDR (système de gestion de base de données relationnelle) est un système (logiciel) qui permet de gérer une base de données relationnelle. Les SGBDR peuvent être soit de type client/serveur (Oracle, SQL Server, MySQL, PostgreSQL, etc.), soit de type fichiers partagés (Access, SQL Server CE, Paradox, DBase, etc.). Dans le milieu professionnel, on retrouve principalement des SGBDR client/serveur même si les solutions en fichiers partagés ont eu leur heure de gloire et sont encore utilisées dans certaines applications. L’apparition de SGBDR client/serveur gratuits a fortement contribué à populariser ce modèle ces dernières années. Le modèle client/serveur nécessite généralement la présence d’un serveur, qui traite les requêtes transmises par le client et lui retourne le résultat. Le principal intérêt d’un SGBDR est qu’il va fournir les services suivants (tous les SGBDR ne proposent pas tous ces services) :
■ implémentation du langage d’interrogation des données SQL (Structured Query Language) ;
■ gestion des structures des données et de leur modification ;
■ gestion de l’intégrité des données ;
■ gestion des transactions ;
■ gestion de la sécurité, contrôle d’accès ;
■ abstraction de la plateforme matérielle et du système d’exploitation sous-jacent ;
■ du point de vue logique, abstraction de l’organisation du stockage sous-jacent ;
■ tolérance aux pannes et administration du système ;
■ répartition de la charge.
1.2 Modèle de stockage des données
1.2.1 Organisation des données
Les tables sont les objets logiques de base du modèle relationnel. Or, un système d’exploitation ne connaît que la notion de fichiers. Le SGBDR permet de faire le lien entre la représentation logique et le stockage physique dans les fichiers. Nous allons voir comment en étudiant le SGBDR Oracle.
Les objets logiques (tables, index, etc.) sont stockés dans des espaces logiques appelés « tablespaces ». Une base de données est constituée de plusieurs tablespaces, lesquels sont composés d’un ou de plusieurs fichiers appelés « datafiles ». Ces fichiers peuvent se trouver sur des disques différents.
………