4. Un exemple d'implantation de base de données

Cette caractéristique assure la pérennité des programmes qui autorisent ... L'
indépendance logique est possible grâce à l'utilisation de l'interface .... Exercice :
écrivez les relations correspondant aux entités natureimmo, ..... Dans tous les
exercices suivants, vous devez passer du modèle conceptuel au modèle
relationnel.

Part of the document


Séquence 4
L'IMPLANTATION DE LA BASE DE DONNEES RELATIONNELLES
Dans la séquence 2, vous avez étudié les différentes étapes de la méthode
Merise. Cette séquence a pour objet d'étudier le passage du modèle
conceptuel des données au modèle logique puis le passage du modèle logique
au modèle physique des données.
Le système de gestion de base de données relationnelles 1 La définition du SGBDR
1 Les principes généraux
Une base de données est un ensemble cohérent d'informations mémorisées sur
un support magnétique. Ces informations sont accessibles à l'aide d'une
application appelée système de gestion de base de données (SGBD en abrégé). Un SGBD est un ensemble de logiciels qui fournissent un environnement pour
décrire, mémoriser, manipuler et traiter des collections de données tout en
assurant leur sécurité, confidentialité et intégrité alors qu'un grand
nombre d'utilisateurs interagit avec ces collections de données.
Il existe trois modèles logiques de données : le modèle hiérarchique, le
modèle réseau et le modèle logique de données relationnelles. Un système de
gestion de base de données relationnelles (SGBDR en abrégé) est un logiciel
conçu pour tirer partie des caractéristiques du modèle relationnel. On peut
aussi dire que les concepts du modèle relationnel nous permettent de
transcrire le modèle conceptuel pour que des traitements sur les données
soient parfaitement possibles à l'aide d'un SGBDR. Les choix des types de
modèle et de SGBD sont liés. Dans tout ce qui va suivre je ne ferai allusion qu'aux bases de données
relationnelles et systèmes de gestion de base de données relationnelles.
Cependant les caractéristiques et les objectifs que je vais citer sont
communs aux différents types de base et de SGBD.
La description des données dans un SGBD se fait à trois niveaux. Ces
niveaux sont : - le niveau logique qui présente la base comme un ensemble de
relations,
- le niveau interne qui décrit la disposition des données sur le
disque,
- le niveau externe qui présente les données aux utilisateurs sous
forme de vues. Ce choix d'architecture a pour objectif d'accroître l'indépendance entre
les données et les traitements, à savoir l'indépendance physique,
l'indépendance logique et l'indépendance vis à vis des stratégies d'accès.
L'indépendance physique Il s'agit de rendre l'utilisation des données indépendante de leur
organisation physique sur le disque. Cette caractéristique assure la
pérennité des programmes qui autorisent l'accès aux données d'une base.
Les données se trouvent à un endroit sur le disque et les programmes qui
traitent les données ne se trouvent pas forcément au même endroit.
L'indépendance logique Il s'agit de rendre l'utilisation des données indépendante de la structure
initiale de la base de données. Cette caractéristique doit permettre à un
utilisateur, sans qu'il remette en cause les relations initiales, de
manipuler les données comme il le souhaite.
L'indépendance logique est possible grâce à l'utilisation de l'interface
homme machine qui a été étudiée dans une séquence précédente.
L'indépendance vis à vis des stratégies d'accès
Un programme d'application n'a pas à préciser comment accéder à une donnée
mais uniquement ce qu'il désire, l'optimisation de l'accès aux données
restant à la charge du SGBD.
Contrairement à un langage algorithmique qui précise à une machine le
comment faire, le langage algébrique indique ce que je veux obtenir. Quand
je fais la projection des attributs X et Y, je demande à la machine de me
fournir les valeurs de ces attributs sans lui indiquer la façon d'y
accéder. Je laisse au SGBD le soin de trouver le meilleur chemin d'accès. 2 Les principaux SGBDR du marché
Au niveau du micro-ordinateur, il faut distinguer les SGBD relationnels
Serveurs et les SGBD relationnels Clients. Un SGBDR Serveur permet à plusieurs utilisateurs, connectés en réseau,
d'accéder simultanément aux données d'une base de données relationnelle. La
tâche essentielle d'un tel SGBD est de gérer correctement les problèmes
d'accès et de garantir la cohérence et la sécurité des données de la base à
tous les utilisateurs.
Parmi les produits les plus représentatifs du marché on trouve Oracle, SQL
Server de Microsoft, DB2 d'IBM, PostgreSQL et MySQL qui sont des logiciels
Open Source. Chaque informaticien est libre d'utiliser ou modifier ce
logiciel. Tout le monde peut télécharger gratuitement MySql et l'utiliser
sans payer de droits.
Au niveau pédagogique, le SGBDR le plus répandu est ACCESS conçu par
Microsoft ; c'est le SGBDR le plus vendu dans le monde IBM-PC. C'est un
produit très convivial capable de répondre à des usages personnels,,voire
des besoins de petite collectivité pour des volumes d'information qui ne
sont pas trop importants. Ce SGBDR est bien adapté pour les postes clients. Dans les grandes entreprises, le plus répandu est ORACLE conçu par Oracle
Corporation, leader mondial des SGBDR tournant le plus souvent dans
l'environnement UNIX. C'est un produit d'une très grande puissance capable
de traiter de très gros volumes d'informations, de les mettre à la
disposition de centaines d'utilisateurs répartis dans des lieux
géographiques distincts et éloignés, avec des temps de réponse
satisfaisants et une sécurité quasi absolue. Il existe aussi DB2 d'IBM. 2 Les langages ou outils du SGBDR Avec un SGBD on souhaite essentiellement définir les données, les
manipuler, assurer leur sécurité et leur intégrité, gérer les transactions
et les accès concurrents.
1 La définition des données
Le rôle d'un langage de définition de données (LDD en abrégé) est de
décrire et de définir les niveaux logique, interne et externe.
Au niveau logique, le LDD doit permettre la création, la modification et la
suppression des tables correspondant aux relations de la base de données
initiale. Il doit aussi assurer la création, la modification et la
suppression des liens entre tables. Créer une table, c'est lui donner un
nom et c'est bâtir des colonnes en leur affectant des noms et des domaines
de définition.
L'objectif est donc de décrire les objets et les caractéristiques de la
structure.
Au niveau externe, le LDD doit permettre la création, la modification et la
suppression de vues, c'est à dire de tables propres au travail d'un
utilisateur.
Au niveau interne, le LDD doit permettre la création de structures assurant
le meilleur fonctionnement possible du SGBD.
2 La manipulation des données
La manipulation des données recouvre tous les échanges de données entre les
utilisateurs et la base de données. Ces échanges comprennent la
consultation et la mise à jour des tables. La mise à jour comprend
l'insertion des données dans une table, leur modification et leur
suppression. Il ne faut pas confondre création de la structure (donner un nom à une
table et à ses colonnes) et insertion. L'insertion (saisie des lignes de la
table) de valeurs dans une table ne peut se faire que si elle a été créée.
Il est donc important de souligner le rôle du concepteur de la base et
l'utilisateur de cette dernière. Le concepteur de la base de données va
s'attacher à décrire les objets et les caractéristiques de la structure :
c'est ce qui a été vu dans le paragraphe précédent. L'utilisateur, pour sa
part, va saisir les différentes valeurs que peuvent prendre les données.
La manipulation des données se fait à l'aide d'un langage dit langage de
manipulation de données (LMD). Ce langage constitue pour les utilisateurs
le seul moyen d'accéder aux données de la base. Les LMD varient d'un
système à un autre. Pour manipuler les données, le modèle relationnel dispose d'un ensemble
d'opérations dont l'application à des tables constitue l'algèbre
relationnelle (ou langage algébrique). Nous savons que ce langage ne
contient pas une gamme complète d'opérations. Il faut donc que le SGBD
offre un langage plus complet que l'algèbre relationnelle. 3 la sécurité et l'intégrité des données
Il s'agit de garantir que seuls les utilisateurs autorisés peuvent
effectuer des opérations sur la base et que leurs opérations ne détruisent
pas la cohérence de la base. La sécurité est assurée par un contrôle des utilisateurs et des opérations
qu'ils ont le droit de faire. La protection des données est assurée par
l'attribution de mots de passe aux utilisateurs autorisés à accéder aux
données. La cohérence de la base est assurée par le respect de certaines règles
dites contraintes d'intégrité. Nous avons vu que le modèle relationnel
intègre ces contraintes dans son schéma.
4 La gestion des transactions et des accès concurrents
Il s'agit pour le SGBD de permettre à plusieurs utilisateurs de pouvoir
travailler en même temps sur une ou plusieurs bases de données.
Plusieurs utilisateurs pourront travailler en même temps sur le même
enregistrement, sans entrer en concurrence. Le passage du modèle de données au modèle relationnel 1 Le vocabulaire du niveau logique 1 Principe et place de cette étape dans la méthodologie
Le niveau conceptuel des données permet de recenser les données et les
associations qui lient ces données.
Le niveau logique des données est plus proche de la structure utilisée en
machine.
Adapter le modèle conceptuel des données aux contraintes techniques d'un
système de gestion de base de données relationnelles est l'objectif du
passage au modèle logique de données relationnelles.
Ce modèle logique va permettre la gestion d'informations structurées dans
des tableaux à deux dimensi