Вы находитесь на странице: 1из 68

Principes des Bases de Donnes

Relationnelles

INT Evry, 29-31 mai 2000 1


Programme

Introduction aux BD et aux SGBD


Le modle relationnel
Le langage de requte SQL
La conception dune BD relationnelle
Protection des informations
Perspectives des BD

INT Evry, 29-31 mai 2000 2


Objectifs du cours
Montrer lintrt dune approche BD
Prsenter le modle relationnel
Proposer une dmarche de conception
Prsenter les SGBD relationnels et les outils associs
Faire le point sur les diffrentes architectures de mise en
uvre des SGBD relationnels
Evoquer les volutions des bases de donnes

INT Evry, 29-31 mai 2000 3


Programme

Introduction aux BD et aux SGBD


Le modle relationnel
Le langage de requte SQL
La conception dune BD relationnelle
Protection des informations
Perspectives des BD

INT Evry, 29-31 mai 2000 4


Bases de donnes et SI
BD: support technique pour la
gestion des SI
BD: environnement de
dveloppement des SI
BD: lment stratgique dans
larchitecture des SI
(fonctionnalits, volution,
fiabilit, scurit)

INT Evry, 29-31 mai 2000 5


Contexte technique BD

Structure en mmoire centrale (MC)


Fichiers
Bases de donnes

INT Evry, 29-31 mai 2000 6


Structure en MC

Principes
Stockage des donnes dans la mmoire volatile dun ordinateur

Problmes
Stockage temporaire

Petits volumes de donnes

Langages de programmation

Contexte mono-utilisateur

INT Evry, 29-31 mai 2000 7


Fichiers

Stockage persistant sur disque


Gros volumes de donnes
Langages de programmation et SGF
Contexte mono-utilisateur (en gnral)

INT Evry, 29-31 mai 2000 8


Approche fichier avec PCs

INT Evry, 29-31 mai 2000 9


Approche fichiers + SGF

INT Evry, 29-31 mai 2000 10


Problmes de lapproche fichier
Difficult saisir les liens entre les donnes
Pas de partage de donnes entre les utilisateurs
Pas de vision globale des donnes
Redondance des donnes
Risque d'incohrence des donnes
Pas d'indpendance entre les donnes et les traitements
Problme de gestion de la scurit des donnes
Multiplicit des traitements, des langages, des matriels

INT Evry, 29-31 mai 2000 11


Bases de donnes

Stockage persistant sur disque


Trs gros volumes de donnes
Langage de requtes et langages de programmation et
SGBD
Contexte multi-utilisateurs

INT Evry, 29-31 mai 2000 12


Approche centralise

INT Evry, 29-31 mai 2000 13


Approche client/serveur

INT Evry, 29-31 mai 2000 14


Notions de base
Les donnes
Modle de donnes
Schma dune BD
Instance dune BD
Contraintes dintgrit
Systme de gestion de bases de donnes
Mtabase

INT Evry, 29-31 mai 2000 15


Les donnes

Une structure
Simple: prix, nom, date

Complexe: personne, document, image

Une smantique
Le solde dun compte courant

Une photo de Paris ralise par le satellite SPOT

INT Evry, 29-31 mai 2000 16


Les donnes (suite)

Un propritaire
Responsable de la cration dune donne

Dfinit les rgles pour son identification et son intgrit:


La temprature de lair est comprise entre -30 et +40C
Le salaire de lanne n est suprieur au salaire de lanne n-1

Accorde des droits dutilisation

INT Evry, 29-31 mai 2000 17


Les donnes (suite)

Des utilisateurs
Interrogent les donnes
Quelle tait la temprature Paris le 1er Janvier 1997 ?

Mettent jour les donnes


Crditer le compte de M. Monet de 1000 F

INT Evry, 29-31 mai 2000 18


Modle de donnes

Ensemble de concepts pour dcrire:


les donnes du monde rel

les liens entre les donnes

la smantique des donnes

Ensemble doprations pour manipuler les donnes

INT Evry, 29-31 mai 2000 19


Schma dune BD

Description des donnes de la base, conformment un


modle
Schma rseau, schma relationnel, ...
Statique en gnral

INT Evry, 29-31 mai 2000 20


Instance dune BD

Collection de donnes de la base crite selon un certain


modle
Instance du schma
Dynamique

INT Evry, 29-31 mai 2000 21


Contraintes dintgrit

Rgle spcifie sur les donnes, pour dfinir un tat


cohrent de la base
Le salaire dun employ doit tre suprieur au SMIC

INT Evry, 29-31 mai 2000 22


Systme de gestion de bases de donnes

Systme logiciel grant les donnes dune BD, selon un


modle fix
Un SGBD doit permettre la dfinition, la manipulation et
le contrle des donnes

INT Evry, 29-31 mai 2000 23


Mtabase

Collection des donnes qui dcrivent la BD


Valeur du schma

INT Evry, 29-31 mai 2000 24


Apport dune approche BD

Intgration
Indpendance
Scurit
Facilits pour lutilisateur

INT Evry, 29-31 mai 2000 25


Intgration

Description unique et globale des donnes


Eviter les redondances
Eviter les incohrences

INT Evry, 29-31 mai 2000 26


Indpendance

Indpendance entre donnes et traitements


Sparation entre les descriptions logiques et physiques des
donnes

INT Evry, 29-31 mai 2000 27


Scurit

Contrle smantique des donnes


Protection contre les accs non autoriss
Protection contre les pannes

INT Evry, 29-31 mai 2000 28


Facilits pour lutilisateur

Partage des donnes


Vision haut niveau et personnalise des donnes
Manipulation aise des donnes
Accs efficaces aux donnes
Rpartition des donnes et des traitements

INT Evry, 29-31 mai 2000 29


Une architecture de rfrence pour les
SGBD
Description des donnes
Exemple
Consquences
Conception dune BD
Niveau conceptuel
Niveau interne
Niveau externe

INT Evry, 29-31 mai 2000 30


Description des donnes
Trois niveaux de description selon le groupe
ANSI/X3/SPARC (1975)

INT Evry, 29-31 mai 2000 31


Exemple

INT Evry, 29-31 mai 2000 32


Consquences
Indpendance physique
Indpendance entre les structures de stockage et les structures de donnes

Pourvoir modifier l'organisation physique sans modifier les programmes


dapplication
Exemple: ajouter un index

Indpendance logique
Pouvoir modifier le schma conceptuel sans modifier les programmes
dapplication
Exemple: ajouter un attribut.

INT Evry, 29-31 mai 2000 33


Conception dune BD

INT Evry, 29-31 mai 2000 34


Niveau conceptuel (suite)

Quoi ?

INT Evry, 29-31 mai 2000 35


Niveau conceptuel (suite)

Comment ?

INT Evry, 29-31 mai 2000 36


Niveau conceptuel (suite)

Principes de construction
La BD est vue comme une reprsentation de lunivers du discours

Distinction entre instance et type

INT Evry, 29-31 mai 2000 37


Niveau conceptuel (suite)

Principes de construction (suite)


Distinction entre entits et association:
Entit: lment concret ou abstrait du domaine dapplication qui a une
existence intrinsque.
Association: lien entre deux ou plusieurs entits.

INT Evry, 29-31 mai 2000 38


Niveau interne
Structure de stockage supportant les donnes = niveau physique.
Dpendant du SGBD
Les donnes sont organises en fichiers
Un fichier est compos denregistrements
Un enregistrement est compos de champs
Les donnes sont accdes par des index, des chanages, ...
La conception ne prend pas en compte les problmes de performance

INT Evry, 29-31 mai 2000 39


Niveau externe
Une vue particulire de la BD par un utilisateur ou un groupe
Vue = Sous-schma = schma externe
En gnral, une vue = un sous-ensemble du schma conceptuel
Indpendance logique
Scurit, confidentialit
Facilit de manipulation
La dfinition dune vue dcrit les rgles de passage entre les lments du
schma conceptuel et les lments de la vue

INT Evry, 29-31 mai 2000 40


Modlisation et modles pour les bases
de donnes
Modlisation des donnes
Les modles pour les bases de donnes

INT Evry, 29-31 mai 2000 41


Modlisation des donnes

Modle de donnes
Ensemble de concepts pour dcrire:
Les donnes
Les liens entre les donnes
La smantique des donnes

En gnral, un ensemble doprations est associ pour manipuler les


donnes

INT Evry, 29-31 mai 2000 42


Modlisation des donnes (suite)

Modle BD
Modle permettant la description et la manipulation des donnes

Modle implant via un SGBD

Formalisme de description
Textuel

Graphique

Mathmatique

INT Evry, 29-31 mai 2000 43


Modlisation des donnes (suite)

Exemples de modles
Entit/Association

Hirarchique, Rseau

Relationnel

INT Evry, 29-31 mai 2000 44


Modle Entit/Association
[Chen 7]
Exemple de modle

Eleve Prof
1,n Notation 0,n
Code_elev Note Code_prof
Nom_Elev Nomprof
1,1 Code_categ
0,n Nom_Categ
Appartient
Matiere
Salle 1,n
1,n Code_Matiere
Classe 1,n
1,n Fait cours
No_Classe

INT Evry, 29-31 mai 2000 45


Critique du modle Entit/Association

Avantages Inconvnients
+ Smantique riche - Uniquement un modle de description

+ Extension aux concepts objets de donnes

(hritage, ...) - Pas de langage de manipulation associ

+ Aspect visuel - Pas de SGBD E/A

+ Modle de conception de BD - Pas un modle dimplantation de BD

INT Evry, 29-31 mai 2000 46


Modle relationnel

[CODD 70] A Relational Model for Large Shared Data


Banks
Exemple
Employ(No_ss, Nom, Adresse, Age, salaire)

Projet(No, Libell, Chef_projet)

Travaille_sur(No_employ, No_projet)

INT Evry, 29-31 mai 2000 47


Modle relationnel (suite)

Schma BD
Structure de relation

BD
Ensemble denregistrements relis par des valeurs

Langage de manipulation
Ensembliste

Dclaratif

Standard international [ SQL 8, 89]

INT Evry, 29-31 mai 2000 48


Modle relationnel (suite)
Prototypes de recherche
System/R chez IBM (1976)

Ingres Berkeley (1976)

Systmes commerciaux
SQL/DS et DB2 dIBM (1982)

Oracle (1983)

Ingres (1983)

Informix (1981)

Sybase (1984)

INT Evry, 29-31 mai 2000 49


Modle relationnel (suite)

Avantages
Indpendance logique/physique

Langage de manipulation simple

Bas sur une thorie mathmatique solide

Standard

INT Evry, 29-31 mai 2000 50


Rsum sur les modles

INT Evry, 29-31 mai 2000 51


Quest-ce quun SGBD ?
But Langage de manipulation des
Moyen donnes

Fonctionnalits de base Interface avec un LPG

Autres fonctionnalits Les utilisateurs dun SGBD

Langage de dfinition Schma global

INT Evry, 29-31 mai 2000 52


But

Simplifier et faciliter laccs aux donnes de la base


Assurer une grande scurit du systme d'information

INT Evry, 29-31 mai 2000 53


Moyen

En offrant une vision de haut niveau des donnes, via


un modle logique des donnes
En se chargeant de faire la correspondance avec la vision
de bas niveau des donnes (structures de stockage et
mthodes daccs)

INT Evry, 29-31 mai 2000 54


Fonctionnalits de base
Langage de dfinition et de manipulation des donnes
(LDD + LMD)
Gestion de lintgrit Dfinition des CI, Trigger
Gestion de la persistance
Structures de stockage et mthodes daccs Cluster,
index
Gestion de la concurrence transaction, verrouillage

INT Evry, 29-31 mai 2000 55


Fonctionnalits de base (suite)

Gestion de la scurit de fonctionnement transaction,


journaux, mcanisme de reprise
Gestion des droits identification, attribution de droits
Optimisation algorithme, statistiques
Interface avec les langages de programmation

INT Evry, 29-31 mai 2000 56


Autres fonctionnalits

Gestion de versions
Gestion de la rpartition
Gestion dobjets complexes (image, document, ...)
Gestion de connaissances, rgles de dduction
Environnement de dveloppement (AGL)

INT Evry, 29-31 mai 2000 57


Langage de dfinition
Dfinition logique des donnes
Schma Conceptuel global

Schmas des vues utilisateur

Structure des donnes et liens entre les donnes

Dfinition physique des donnes


Schma physique des donnes

Mthodes de placements et daccs

Contrle des donnes


Contraintes dintgrit

Droits daccs

INT Evry, 29-31 mai 2000 58


Langage de manipulation des donnes

Objectif
Interroger et mettre jour les donnes
extraire
ajouter
supprimer
modifier

INT Evry, 29-31 mai 2000 59


Langage de manipulation des donnes
(suite)
Style dclaratif
Exprimer linformation souhaite sans dire la faon dont on accde
linformation
Modle relationnel

Langage ensembliste

Indpendant du niveau physique

Norme SQL 8, 89, 92

SQL seul et SQL intgr dans un LPG classique

INT Evry, 29-31 mai 2000 60


Interface avec un LPG

Problme dun LMD


Uniquement interrogation et mise jour des donnes

Pas de calculs sur les donnes

INT Evry, 29-31 mai 2000 61


Interface avec un LPG (suite)
Solution
Interfacer le LMD avec un LPG

Diverses techniques dinterfaage (prcompilation, ....)

2 approches langages htes:


Par intgration d'un langage d'accs la BD dans un langage de programmation
SEQUEL et le langage C

Embedded SQL

2 possibilits:
Prcompilation des requtes la BD
Interprtation l'excution

Par extension d'un langage de programmation PASCAL R

INT Evry, 29-31 mai 2000 62


Interface avec un LPG (suite)

Exemples
LMD rseau interface normalise avec COBOL

LMD relationnel interfaces normalises entre SQL et


Cobol, Pascal, Fortran, PL/1 (1986)
Ada, C (1989)

INT Evry, 29-31 mai 2000 63


Les utilisateurs dun SGBD

L administrateur BD
Contexte de travail: les 3 niveaux.

Utilise LDD (dfinition de la BD avec le LDD)

Dfinit les schmas logiques et physiques (structures de stockage +


stratgies daccs)
Dfinit les CI + droits daccs

Dfinit vues

Utilise le DD

INT Evry, 29-31 mai 2000 64


Les utilisateurs dun SGBD (suite)

Le dveloppeur dapplications
Contexte de travail: niveau externe

Utilise le LMD + LPG

Ecrit des programmes pour interroger, mettre jour et traiter les donnes

Connat les schmas logiques et physiques

INT Evry, 29-31 mai 2000 65


Les utilisateurs dun SGBD (suite)

L utilisateur terminal
Contexte de travail: niveau externe

Averti : interroge la BD en utilisant LMD

Naf : utilise les programmes dapplication

INT Evry, 29-31 mai 2000 66


Les utilisateurs dun SGBD (suite)

Le concepteur
Contexte de travail: niveau conceptuel

Construction du schma conceptuel avec un modle de donnes

INT Evry, 29-31 mai 2000 67


Schma global

INT Evry, 29-31 mai 2000 68

Вам также может понравиться