Introduction aux bases de données

Programming, Databases, Software Engineering · course

Browse all bases de données documents

Introduction aux bases de donn es

Mehdi HAJJI

[email protected]

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