Introduction aux bases de donn es
Mehdi HAJJI
Conception BD II2
Plan du cours
} D finitions
} SGBD
} Notion de donn es
} Notion de mod le de donn es
} Notion de sch ma de donn es
} Notion de langage de donn es
} Notion dadministration de donn es
} Conception dune base de donn es
Introduction aux bases de donn es
-M. HAJJI-
2
D finitions
} Base de donn es
} Une BD est un ensemble volumineux,
} structur et minimalement redondant de donn es,
} reli es entre elles,
} stock es sur supports num riques centralis s ou distribu s,
} servant pour les besoins d'une ou plusieurs applications,
} interrogeables et modifiables par un ou plusieurs utilisateurs
travaillant potentiellement en parall le.
} Exemple
} Une BD de gestion de l'activit d'une compagnie a rienne
concernant les voyageurs, les vols, les avions, le personnel, les
r servations, etc.
} Une telle BD pourrait permettre la gestion des r servations, des
disponibilit s des avions en fonction des vols effectuer, des
affectations des personnels volants, etc.
Introduction aux bases de donn es
-M. HAJJI-
3
D finitions
} Banque de donn es
} Une banque de donn es est un ensemble, pas forc ment
structur dinformations, g n ralement regroup es (sous
forme de fichiers manuels ou informatiques, id sunt des "BASES
de donn es")
} Aussi a-t-on lhabitude daffirmer (m me si ce nest pas
directement li leur d finition), quune BANQUE de donn es
est compos e de BASES de donn es (mais ce nest pas tout
fait la r alit )
Introduction aux bases de donn es
-M. HAJJI-
4
SGBD
} Un SGBD est un logiciel qui prend en charge la
structuration, le stockage, la mise jour et la maintenance
d'une base de donn es.
} Il est l'unique interface entre les informaticiens et les
donn es (d finition des sch mas, programmation des
applications), ainsi qu'entre les utilisateurs et les donn es
(consultation et mise jour).
Introduction aux bases de donn es
-M. HAJJI-
5
SGBD
} Exemples:
} Oracle est un SGBD relationnel (et Relationnel-Objet dans ses
derni res versions) tr s reconnu pour les applications
professionnelles.
} MySQL est un SGBD relationnel libre (licence GPL et commerciale),
simple d'acc s et tr s utilis pour la r alisation de sites Web
dynamiques. Depuis la version 4 MySQL impl mente la plupart des
fonctions attendues d'un SGBD relationnel.
} PosgreSQL est un SGBD relationnel et relationnel-objet tr s
puissant qui offre une alternative open-source aux solutions
commerciales comme Oracle ou IBM.
} Access est un SGBD relationnel Microsoft, qui offre une interface
conviviale permettant de concevoir rapidement des applications de
petite envergure ou de r aliser des prototypes moindre frais.
Introduction aux bases de donn es
-M. HAJJI-
6
Advertisement
SGBD
} Avant l'av nement des SGBD, chaque application informatique
dans l'entreprise impliquait sa propre quipe de
d veloppement, ses propres supports physiques, ses propres
fichiers, ses propres normes, ses propres langages, etc.
} Cons quences: L'existence conjointe et croissante de ces
applications ind pendantes a des effets n gatifs, tels que :
} La multiplication des t ches de saisie, de d veloppement et de
support informatique
} La redondance anarchique des informations dans les fichiers
} L'incoh rence des versions simultan es de fichiers
} La non-portabilit des traitements en raison des diff rences dans les
formats et langages.
} La multiplication des co ts de d veloppement et de maintenance des
applications.
Introduction aux bases de donn es
-M. HAJJI-
7
SGBD
} Probl mes humains et mat riels.
} Co ts en personnels qualifi s et en formations
} Remise des pouvoirs de d cision entre les mains de sp cialistes
informatiques
} Tout changement mat riel ou logiciel a un impact sur les
applications
} Tout changement de la structure des donn es n cessite de
modifier les programmes
Introduction aux bases de donn es
-M. HAJJI-
8
SGBD : Caract ristiques
} La conception d'un syst me d'information pour tre
rationnelle l' chelle d'une entreprise se doit d'adopter
un certain nombre de principes, tels que :
} Une description des donn es ind pendante des traitements
} Une maintenance de la coh rence de donn es
} Le recours des langages non proc duraux, interactifs et
structurants
} Dans ce cadre les SGBD se fixent les objectifs suivants :
} Ind pendance physique des donn es
} Le changement des modalit s de stockage de l'information
(optimisation, r organisation, segmentation, etc.) n'implique pas
de changements des programmes.
Introduction aux bases de donn es
-M. HAJJI-
9
SGBD : Caract ristiques
} Ind pendance logique des donn es
} L' volution de la structure d'une partie des donn es n'influe pas sur
l'ensemble des donn es.
} Manipulation des donn es par des non-informaticiens
} L'utilisateur n'a pas savoir comment l'information est stock e et
calcul e par la machine, mais juste pouvoir la rechercher et la
mettre jour travers des IHM ou des
langages assertionnels simples.
} Administration facilit e des donn es
} Le SGBD fournit un ensemble d'outils (dictionnaire de donn es,
audit, statistiques, etc.) pour am liorer les performances et optimiser
les stockages.
} Optimisation de l'acc s aux donn es
} Les temps de r ponse et de d bits globaux sont optimis s en
fonctions des questions pos es la BD.
Introduction aux bases de donn es
-M. HAJJI-
10
SGBD : Caract ristiques
} Contr le de coh rence (int grit s mantique) des donn es
} Le SGBD doit assurer tout instant que les donn es
respectent les r gles d'int grit qui leurs sont impos es.
} Partageabilit des donn es
} Les donn es sont simultan ment consultables et modifiables.
} S curit des donn es
} La confidentialit des donn es est assur e par des syst mes
d'authentification, de droits d'acc s, de cryptage des mots de
passe, etc.
} S ret des donn es
} La persistance des donn es, m me en cas de panne, est
Advertisement
assur e, gr ce typiquement des sauvegardes et des journaux
qui gardent une trace persistante des op rations effectu es.
Introduction aux bases de donn es
-M. HAJJI-
11
Notion de donn es
} Type de donn es
} Ensemble d'objets qui poss dent des caract ristiques similaires
et manipulables par des op rations identiques.
} Exemple
} Entier = { 0, 1, 2, ... , N }
} V hicule = (immatriculation, marque, type, couleur)
} Donn e
} El ment effectif, r el, correspondant une type de donn es.
} Exemple
} L'entier 486
} Le v hicule (460HP59, Renault, Megane, Jaune)
Introduction aux bases de donn es
-M. HAJJI-
12
Notion de mod le de donn es
} Ensemble de concepts et de r gles de composition de ces
concepts permettant de d crire des donn es (Gardarin,
1999).
} Un mod le est souvent repr sent au moyen d'un
formalisme graphique permettant de d crire les donn es
(ou plus pr cis ment les types de donn es) et les
relations entre les donn es.
} On distingue trois niveaux de mod lisation pour les bases
de donn es :
} Le mod le conceptuel
} Il permet de d crire le r el sans prendre en compte les contraintes
techniques.
Introduction aux bases de donn es
-M. HAJJI-
13
Notion de mod le de donn es
} Le mod le logique
} Il permet de d crire une solution, en prenant une orientation
informatique g n rale (type de SGBD typiquement), mais
ind pendamment de choix d'impl mentation pr cis.
} Le mod le physique
} Il correspond aux choix techniques, en terme de SGBD choisi et de sa
mise en Suvre (programmation, optimisation, etc.).
Introduction aux bases de donn es
-M. HAJJI-
14
Notion de sch ma de donn es
} Description, au moyen d'un langage formel, d'un ensemble
de donn es dans le contexte d'une BD.
} Un sch ma permet de d crire la structure d'une base de
donn es, en d crivant l'ensemble des types de donn es
de la base. L'occurence d'une base de donn es est
constitu e de l'ensemble des donn es correspondant aux
types du sch ma de la base.
} Exemple de sch ma de base de donn es
Etudiant (NumEtud, nom, ville)
Module (NumMod, titre)
Inscription (NumEtud, NumMod, date)
Introduction aux bases de donn es
-M. HAJJI-
15
Notion de sch ma de donn es
} Exemple instance dune base de donn es
Etudiant (172, 'Dupont', 'Lille')
Etudiant (173, 'Durand', 'Paris')
Etudiant (174, 'Martin', 'Orl ans')
Module(1, 'SGBD')
Module(1, 'Syst mes d'exploitation')
Inscription(172, 1, 2002)
Inscription(172, 2, 2002)
Inscription(173, 1, 2001)
Inscription(174, 2, 2002)
Introduction aux bases de donn es
-M. HAJJI-
16
Notion de sch ma de donn es
Advertisement
} On distingue trois niveaux d'abstraction de sch mas :
} Le niveau conceptuel
} Il permet de d crire les entit s et les associations du monde r el. Il
s'agit du sch ma global de la base de donn es, il en propose une vue
canonique.
} Le niveau conceptuel correspond au mod le conceptuel.
} Le niveau externe (notion de vue)
} Il permet de d crire les entit s et les associations du monde r el,
mais vues d'un utilisateur ou d'un groupe d'utilisateurs particuliers
(on parle d'ailleurs galement de "vue" pour un sch ma externe).
} Il s'agit d'une restriction du sch ma conceptuel orient e vers un
usage pr cis. Il existe g n ralement plusieurs sch mas externes
pour un m me sch ma conceptuel.
} Le niveau externe correspond un sous ensemble du mod le
conceptuel restreint aux points de vue de certains utilisateurs.
Introduction aux bases de donn es
-M. HAJJI-
17
Notion de sch ma de donn es
} Le niveau interne
} Il correspond l'impl mentation physique des entit s et
associations dans les fichiers de la base.
} Le niveau interne correspond aux mod les logiques et
physiques.
Introduction aux bases de donn es
-M. HAJJI-
18
Notion de langage de donn es
} Langage informatique permettant de d crire et de
manipuler les sch mas d'une BD d'une une mani re
assimilable par la machine.
} Un langage de donn es peut tre d compos en trois
sous langages :
} Le Langage de D finition de Donn es
} Le LDD permet d'impl menter le
sch ma conceptuel (notion de table en SQL) et les sch mas externes
(notion de vue en SQL).
CREATE TABLE Etudiant (
NumEtu : integer,
Nom : string,
Ville : string)
Introduction aux bases de donn es
-M. HAJJI-
19
Notion de langage de donn es
} Le Langage de Contr le de Donn es
} Le LCD permet d'impl menter
les droits que les utilisateurs ont sur les donn es et participe donc
la d finition des sch mas externes.
GRANT ALL PRIVILEGES ON Etudiant FOR 'Utilisateur'
} Le Langage de Manipulation de Donn es
} Le LMD permet
l'interrogation et la mise jour des donn es. C'est la partie du langage
indispensable pour exploiter la BD et r aliser les applications.
SELECT Nom
FROM Etudiant
WHERE Ville = 'Compi gne'
Introduction aux bases de donn es
-M. HAJJI-
20
Notion dadministration de donn es
Administrateur
} Personne ou groupe de personnes responsables de la
d finition des diff rents niveaux de sch ma.
} On distingue un type d'administrateur par niveau de
sch ma :
} L'administrateur entreprise est en charge de la gestion du
sch ma conceptuel et des r gles de contr le des donn es.
} L'administrateur de donn es est en charge de la gestion des
sch mas externes et de leur correspondance avec le sch ma
conceptuel.
} L'administrateur base de donn es est en charge de la gestion
du sch ma interne et de sa correspondance avec le sch ma
conceptuel.
Introduction aux bases de donn es
-M. HAJJI-
21
Advertisement
Notion dadministration de donn es
Dictionnaire des donn es
} Le dictionnaire de donn es d'un SGBD contient les
informations relatives aux sch mas et aux droits de
toutes les bases de donn es existantes au sein de ce
SGBD.
} Il s'agit d'un outil fondamental pour les administrateurs.
} Les dictionnaires de donn es sont g n ralement
impl ment s sous la forme d'une base de donn es
particuli re du SGBD, ce qui permet de g rer les donn es
relatives aux bases de donn es de la m me fa on que les
autres donn es de l'entreprise (i.e. dans une base de
donn es).
Introduction aux bases de donn es
-M. HAJJI-
22
Conception dune base de donn es
} Etapes de la conception d'une base de donn es
1. Analyse de la situation existante et des besoins
2. Cr ation d'une s rie de mod les conceptuels (canonique et
vues externes) qui permettent de repr senter tous les
aspects importants du probl me
3. Traduction des mod les conceptuels en mod le logique et
4.
optimisation (normalisation) de ce mod le logique
Impl mentation d'une base de donn es dans un SGBD,
partir du mod le logique
Introduction aux bases de donn es
-M. HAJJI-
23
Conception dune base de donn es
Introduction aux bases de donn es
-M. HAJJI-
24
Conception dune base de donn es
} L'importance de l' tape d'analyse
} La premi re tape de la conception repose sur l'analyse de
l'existant et des besoins. De la qualit de la r alisation de cette
premi re tape d pendra ensuite la pertinence de la base de
donn es par rapports aux usages. Cette premi re tape est
donc essentielle et doit tre men e avec soins.
} Si la premi re tape est fondamentale dans le processus de
conception, elle est aussi la plus d licate. En effet, tandis que
des formalismes puissants existent pour la modalisation
conceptuel puis pour la mod lisation logique, la perception de
l'existant et des besoins reste une tape qui repose
essentiellement sur l'expertise d'analyse de l'ing nieur.
Introduction aux bases de donn es
-M. HAJJI-
25
Conception dune base de donn es
} L'importance de l' tape de mod lisation conceptuelle
} Le mod le conceptuel tant formel, il va permettre de passer d'une
sp cification en langage naturel, et donc soumise interpr tation,
une sp cification non ambig e. Le recours aux formalismes de
mod lisation tels que E-A ou UML est donc une aide fondamentale
pour parvenir une repr sentation qui ne sera plus li e
l'interpr tation du lecteur.
} La traduction d'un cahier des charges sp cifiant l'existant et les
besoins en mod le conceptuel reste n anmoins une tape d licate,
qui va conditionner ensuite l'ensemble de l'impl mentation
informatique. En effet les tape suivantes sont plus m caniques, dans
la mesure o un mod le logique est d duit de fa on syst matique du
mod le conceptuel et que l'impl mentation logicielle est galement
r alis e par traduction directe du mod le logique.
Introduction aux bases de donn es
-M. HAJJI-
26
En r sum
Introduction aux bases de donn es
-M. HAJJI-
27
Merci&
Introduction aux bases de donn es
-M. HAJJI-
28