You are on page 1of 10

Chapitre II Les Systmes de Bases de donnes : Concepts et Architecture

I. Introduction Larchitecture des SGBD a volu depuis les premiers systmes monolithiques, o tout le logiciel SGBD tait un systme fortement intgr, vers des logiciels SGBD qui sont conus de faon modulaire, avec une architecture systme client-serveur. Cette volution reflte les tendances dans les systmes informatiques, o les gros ordinateurs mainframe centraliss sont entrains dtre remplacs par des centaines de stations de travail et dordinateurs personnels (PCs) qui sont connects par un rseau de communication. Dans une architecture client-serveur, les fonctionnalits du systme sont distribues entre deux types de modules. Un module client est typiquement conu pour quil sexcutera sur une station de travail ou sur un PC. Pratiquement, les programmes dapplication et les interfaces utilisateur qui accdent la base de donnes sexcutent dans le module client. De ce fait, le module client traite les interactions utilisateur et fournit des interfaces utilisateur conviviales telles que des interfaces utilisateur graphiques base des fentres ou des menus droulants. Lautre type de module, appel un module serveur, typiquement ralise le stockage, laccs, la recherche de donnes et dautres fonctions de manipulation et gestion de donnes. Dans ce chapitre, on va tudier les terminologies et les concepts de base qui permettent de bien comprendre les architectures des systmes de bases de donnes modernes qui seront prsentes dans les chapitres ultrieurs. Dans la premire partie, on discutera les modles de donnes et on dfinira les concepts de schmas et instances, qui sont ncessaires pour tudier les systmes de base de donnes. Puis, on esquissera larchitecture du SGBD trois-schmas et lindpendance de donnes ; ce qui nous donnera une perspective sur ce qui un SGBD doit faire. Dans la troisime partie, on dcrira les types dinterfaces et langages qui sont typiquement fournis par un SGBD. La quatrime section est ddie lenvironnement logiciel du systme de bases de donnes. Enfin, on donnera une classification des types de logiciels SGBD.

II. Modles de Donnes


II.1. Dfinitions Modle de donnes : est un ensemble de concepts et de rgles de composition de ces concepts permettant de dcrire la structure dune base de donnes, et certaines contraintes que la base doit respecter. Oprations du Modle de donnes : Oprations pour spcifier les recherches et mise jour dune base de donnes en se rfrant aux concepts du modle de donnes. II.2. Categories des modles de donnes Modles conceptuels de donnes (haut niveau ou smantiques): appels aussi modles bass entits ou bass objets, fournissent des concepts qui sont proches de la faon de la perception des donnes par plusieurs utilisateurs.

Modles physiques de donnes (bas niveau ou internes) : fournissent les concepts qui dcrivent les dtails de stockage de donnes dans la machine. Modles reprsentationnels de donnes (dimplmentation ou orients enregistrement) : fournissent les concepts qui se trouvent entre les modles conceptuels et les modles physiques, en quilibrant les vues utilisateur avec certains dtails de stockage de donnes dans la machines. Les modles conceptuels de donnes utilisent des concepts tels que les entits, les attributs et les associations. Une entit reprsente un objet ou un concept du monde rel, tel que un employ ou un projet, qui sont dcrits dans la base de donnes. Un attribut reprsente une certaines proprit dintrt qui dcrit en plus une entit, tel que le nom ou le salaire dun employ. Une associations entre deux ou plusieurs entits reprsente une interaction entre les entits ; par exemple, une association travail-sur entre un employ et un projet. Les modles reprsentationnels de donnes sont des modles utiliss le plus souvent dans les SGBD commerciaux traditionnels (ex. Modle relationnel, Rseau, Hirarchique etc.). Ces modles reprsentent les donnes en utilisant des enregistrements. Les modles physiques de donnes dcrivent comment les donnes sont stockes dans la machine en reprsentant les informations telle que les formats de donnes, le tri denregistrement et les chemins daccs. Un chemin daccs est une structure qui permet de rendre efficace la recherche pour des enregistrements spcifiques dans la base de donnes.

A) Schma de base de donne : est la description de la base de donnes, et qui est spcifie durant la conception de la base de donnes et probablement nest pas frquemment modifiable. La plupart des modles de donnes possdent des conventions pour visualiser les schmas sous forme de diagrammes. Un schma visualis est appel diagramme du schma. La figure 1 montre un diagramme du schma de la base de donnes universit. Etudiant Nom N Class Spcialit Etudiant e Cours Nom du N Nombre dHeures Dpartem Cours Cours ent Prs-Requis N N PrCours Requi Section Identificateur de N Semes Ann Enseigna

II.3. Schma, Instances, et Etat de Base de Donnes

Section Cours tre e nt Relev des notes N Identificateur de Not Etudiant Section e Figure 1 : Diagramme de schma de la base de donnes universit. B) Etat de base donnes (clich) : cest lensemble de donnes se trouvant un moment prcis dans la base. C) Instances (Occurrences) de base de donnes : cest lensemble de donnes se trouvant un moment prcis dans la base. La distinction entre le schma de base de donnes et ltat de base de donnes et trs important. Lorsque on dfinit une nouvelle base de donne, on spcifie seulement son schma au SGBD. A ce moment, ltat de base de donnes correspondant est ltat vide On obtient ltat initial de la base de donnes quand la base est rempli ou charg avec les donnes initiales. Aprs cela, chaque fois une opration de mise jour est applique la base, on obtiendra un autre tat de la base. A nimporte quel moment, la base de donne a un tat courant (clich courant). Cest au SGBD qui lui incombe partiellement la responsabilit dassurer que chaque tat de la base est un tat valide cest--dire un tat qui satisfait la structure et les contraintes spcifies dans le schma. De ce fait, la spcification dun schma correct pour le SGBD est extrmement importante, et le schma doit tre conu avec plus dattention. Le SGBD stocke les descriptions des composants et les contraintes du schma dans le catalogue (mta-base) du SGBD de telle sorte ce dernier puisse sy rfrer en cas de besoins. Parfois le schma est appel lintention, et ltat de la base de donnes est appel une extension du schma. Notez bien que les changements au niveau du schma sont moins frquents. Cependant, des changements au niveau des besoins dune application de la base de donnes pourraient ncessiter des changements au niveau du schma de la base. Ces changements sont connus comme une volution du schma. La plupart des SGBDs modernes incluent des oprations pour lvolution du schma qui peuvent tre appliques pendant que la base est en cours dexploitation.

III. Architecture du SGBD et Indpendance de Donnes

Les trois principales caractristiques (cf. Chapitre I) de lapproche base de donnes sont : (1) indpendances des programmes et donnes ; (2) support des multiples vues de donnes ; (3) utilisation dun catalogue pour stocker la description de la base de donnes (schma). Dans cette section, on va spcifier une architecture des systmes de bases de donnes, connue sous le nom darchitecture 3-schmas (ANSI/X3/SPARC), qui a t propose pour pouvoir atteindre et visualiser ces caractristiques. Ensuite, on discutera le concept dindpendance de donnes. III.1. Architecture 3-Schmas 3

Le but de larchitecture 3-schamas (voir figure 2), est de sparer les applications utilisateur de la base de donnes physique. Dans cette architecture, les schmas peuvent tre dfinis 3 niveaux : 1. Le niveau interne qui a un schma interne, qui dcrit la structure physique de stockage de la base de donnes. Le schma interne utilise un modle physique de donnes et dcrit tous les dtails de stockage de donnes et les chemins daccs la base de donnes. 2. Le niveau conceptuel possde un schma conceptuel, qui dcrit la structure de toute la base de donnes pour une communaut dutilisateurs. Le schma conceptuel masque tous les dtails des structures physiques de stockage et se focalise sur la description des entits, les types de donnes, les associations, les oprations dutilisateur, et les contraintes. A ce niveau, on peut utiliser un modle de haut niveau ou dimplmentation de donnes. 3. Le niveau externe ou de vue contient un plusieurs schmas externes ou de vues utilisateur. Chaque schma externe dcrit la partie de la base de donnes au quelle un utilisateur particulier un groupe sintressent tout en lui masquant le reste de la base de donns. Un modle de haut niveau ou dimplmentation de donnes peut tre utilis ce niveau.

Figure 2. Illustration de larchitecture 3-schmas III.2. Indpendance de donnes

Larchitecture 3-schmas peut tre utilis pour expliquer le concept dindpendance de donnes, qui peut se dfinir comme la possibilit de changer le schma un niveau du systme de base de donnes sans avoir chang le schma du niveau immdiatement suprieurs. On peut dfinir 2 types dindpendances : 1. Indpendance logique de donnes : est la possibilit de changer la schma conceptuel sans avoir modifi les schmas externes ou les programmes dapplications. On peut changer la schma conceptuel pour tendre la base de donnes (en ajoutant des nouveaux types denregistrements ou des champs de donnes), ou rduire la base de donnes (en supprimant des types denregistrements ou des champs de donnes). Dans le dernier cas, les schma externes qui se rfrent seulement au reste de donnes ne doivent pas tre affects. Notez que, seulement la dfinition et les correspondances des vues doivent tre changes dans un SGBD qui supporte lindpendance de donnes. Les programmes dapplication qui rfrencent les composants des schmas externes doivent continuer fonctionner, aprs que le schma conceptuel a subit une rorganisation conceptuelle. Les changements des contraintes peuvent tre aussi appliqus au schma conceptuel sans affecter les schma externes ou les programmes dapplication. 2. Indpendance physique de donnes : est la possibilit de changer le schma interne sans avoir modifier le schma les schmas conceptuels ou externes. Les changements du schma interne peuvent tre ncessaire cause dune rorganisation des fichiers physiques par exemple, la cration des structures daccs supplmentaires- pour amliorer la performance de la recherche et la mise jour. Si les mme donnes restent comme avant dans la base, on ne devrait pas changer le schma conceptuel. Par exemple, fournir un chemin daccs pour amliorer la recherche par semestre et anne des enregistrements section (cf. Chapitre I) ne devrait pas demander des changements de requtes telle que lister toutes les sections offertes en 1998 , malgr que cette requte serait excute plus efficacement par le SGBD en utilisant le nouveau chemin daccs. Un SGBD multi-niveaux doit avoir un catalogue qui inclut des informations sur la transformation des requtes entre les diffrents niveaux. Cette transformation est ralise par des logiciels spcifiques intgrs dans le SGBD en utilisant le catalogue. Lindpendance de donnes est ralise, puisque la modification du schma de la base un certain niveau ne se rpercute pas sur le schma du niveau immdiatement suprieur ; ce qui seulement sera chang est la correspondance entre ces deux niveaux. Larchitecture 3-schmas peut rendre facile le processus dindpendance de donnes physique et logique. Cependant, les deux niveaux de transformations cre un overhead durant la compilation ou lexcution dune requte ou dun programme, ce qui entrane une dgradation au niveau des performances du SGBD. 5

IV. Langages et Interfaces de Bases de Donnes IV.1. Les Langages de Bases de donnes

Langage de Dfinition de Donnes (LDD) : Utilis par le DBA et les concepteurs des bases de donnes pour spcifier le schma conceptuel dune base de donnes. Dans plusieurs SGBDs, le LDD est utilis aussi pour dfinir les schmas interne et externes (Vues). Certains SGBDs utilisent deux langages spars : un langage de dfinition de stockage (LDS) et un langage de dfinition de vues (LDV), pour dfinir les schmas interne et externe. Langage de manipulation de donnes (LMD) : Utilis pour spcifier les introgations et les mises jour de la base de donnes. On en a deux types : Un LMD de haut niveau ou non procdural (orient ensemble ou dclaratif) : utilis pour spcifier en une manire concise des oprations (commandes) complexes sur la base de donnes. Ces commandes peuvent tre spcifier dune manire interactive (i.e. langage de requte)) ou incorpores (i.e. sous-langage de donnes) dans un langage de programmation traditionnel (langage Hte), tels que PASCAL, C, COBOL, PL/1. Un LMD de bas niveau ou procdural (orient enregistrement) : Ses commandes doivent tre incorpores dans un langage de programmation traditionnel. Il permet de rechercher individuellement et traiter sparment des enregistrements partir de la base de donnes.

IV.2. Les Interfaces du SGBD

Les interfaces utilisateurs conviviales fournies par un SGBD sont : Interfaces pour le langage de requtes autonome Interfaces de programmation pour lincorporation du LMD dans les langages de programmation traditionnels : o Approche pr-compilateur o Approche appel de procdures o Interfaces utilisateur conviviales : o Bases Menu o Graphiques (pointage et clic, glisser et dplacer) o Bases Fentres o Langage Naturel o Combinaison des interfaces prcdentes o Bases Parole comme entre ( ?) et sorite o Navigateurs Web comme interface o Interfaces paramtriques en utilisant des touches de fonction o Les Langages de gnration dEtat Interfaces pour le DBA o Cration des comptes, Octrois des droits daccs

o Configuration des paramtres du SGBD o Changement des schmas ou des chemins daccs

V. Environnement de Systme de Bases de donnes V.1. Modules Composants dun SGBD

La figure 3 montre une forme simplifie des composants typiques dun SGBD : La base de donnes et le catalogue du SGBD sont stocks sur le disque. Laccs au disque est principalement contrl par le systme dexploitation (SE). Un module de haut niveau de gestion de donnes stockes contrle les accs aux informations du SGBD. Ses principales fonctions sont : o Transfert de donnes de bas niveau entre le disque et la mmoire principale de lordinateur en utilisant les services basiques du SE. o Contrle de transfert tel que gestion des buffers dans la mmoire Compilateur de LDD : traite les dfinitions des schmas, spcifies dans le DLL, et stocke les descriptions des schmas (mta-donnes) dans le catalogue du SGBD. Le catalogue continent les informations telles que les nons des fichiers, les champs de donnes, les dtails de stockage de chaque fichier, les transformations entre les schmas, et les contraintes, en plus dautres types dinformations ncessaires aux modules du SGBD. Processeur daccs la Base de donnes : excute les oprations (interrogation et mises jour) daccs la base de donnes. Compilateur de requtes : traite les requtes de haut niveau, saisies dune manire interactive. Il fait lanalyse syntaxique et smantique, et compile ou interprte les requtes en crant des codes daccs la base de donnes, ensuite il gnre des appels au processeur daccs la base pour lexcution de ces codes. Le Pr -Compilateur : extrait les commandes LMD partir du programme dapplication crit dans un langage de programmation hte. Puis, il les envoie au compilateur de LMD pour la compilation en un code objet pour laccs la base de donnes. Le reste du programme est envoy au compilateur du langage hte. Les codes objet des commandes LMD et le reste du programme sont lis, ce qui forme une transaction embote dont le code excutable contient des appels au processeur daccs la base de donnes.

Figure 3 : Les modules composants dun SGBD. Les ligne hachures et les cercles (A, B, C, D, E) montrent les accs qui sont sous le contrle du module de gestion de donnes.

V.2. Les Utilitaires dun Systme de Base de donnes


En plus des composants dcrits ci-dessus, la plupart des SGBDs possdent des utilitaires de base de donnes qui aident le DBA dans la gestion du systme de bases de donnes tels que : Utilitaires de chargement (conversion) : permettent de charger les donnes stockes dans des fichiers dans la base de donnes ou bien de transformer les donnes entre les SGBDs htrognes. Utilitaires de Sauvegarde : utiliss pour sauvegarder priodiquement sur un support darchivage (ex. bande magntique) et sous un format compress la base de donnes. La copie de sauvegarde pourrait tre utilise en cas de problme catastrophique. Utilitaires de Rorganisation des Fichiers : utiliss pour rorganiser les fichiers de la base de donnes en une nouvelle organisation afin damliorer les performances daccs. Utilitaires de Gnration dEtats

Utilitaires de Contrle de performances : utiliss par le DBA pour obtenir des statistiques sur les performances et les utilisation du systme de base de donnes. Ces statistiques permettent au DBA de prendre des dcisions telle que la ncessit ou non de la rorganisation des fichiers pour amliorer les performances. Autres utilitaires : pour la compression, contrle daccs des utilisateurs, le tri des donnes, etc.

V.3. Outils, Environnements dApplication, et Moyens de Communications

Dautres outils sont souvent mis la disposition des concepteurs, utilisateur et les DBAs des systmes de Base de donnes, Tels que : Outils AGL (Atelier de Gnie Logiciel ou Case (Computer Aided Software Engineering) pour la conception des systmes de bases de donnes. Systme de Dictionnaire de donnes Etendu (ou rpertoire de donnes) : Le dictionnaire de donnes permet le stockage dinformations du catalogue relatives aux schmas et aux contraintes, et dautres informations telles que les dcisions de conceptions, les standards dusage, les descriptions des programmes dapplication, et les informations utilisateur. Le dictionnaire de donnes est accessible aux utilisateurs et aux DBAs. Environnements de Dveloppement dApplication : Fournissent un environnement pour le dveloppement dapplication bases de donnes (ex. Windev, Delphi, PowerBuilder, JBuilder,etc.) et intgrent des facilits qui aident dans tous les aspects des systmes de bases de donnes telles que la conception de la base de donnes, les dveloppement des interfaces graphiques, linterrogation et la mise jour, et le dveloppement des programmes dapplication. Logiciels de Communications : Permettent aux utilisateurs distants daccder au site du systme de bases de donnes partir de leurs terminaux, stations de travail, ou ordinateurs personnels. La connexion entre les utilisateurs et le site de la base de donnes peut se faire au moyen dquipements matriels de communication tels que les lignes tlphoniques, les rseaux distants, les rseaux locaux, ou moyens de communication par satellite. Beaucoup de systmes de base de donnes commerciaux possdent des packages de communication qui fonctionnent avec le SGBD.

VI. Classification des SGBDs

Plusieurs critres sont, pratiquement, utiliss pour la classification des SGBDs. Modle de donnes sur lequel le SGBD est bti (Relationnel, Objet, Objet-Relationnel Hirarchique, Rseau)

Nombre dutilisateurs : systme mono-utilisateur ou multiutilisateurs Nombre de sites sur lesquels la base de donnes est distribue. On distingue deux type de SGBDs : Centraliss (on utilise un seul ordinateur et une seule base de donnes) et Distribues (on utilise plusieurs ordinateurs et plusieurs bases de donnes). La plupart des SGBDs distribus actuellement sont devenus des SGBDs client/serveur car ils ne supportent pas un environnement totalement distribu, mais un ensemble de serveurs supportant un ensemble de clients. Cout de SGBD. Type du Chemin daccs Type de SGBD : Gnral ou Spcifique

10

You might also like