B.FRIKH
Gnralits
B.FRIKH
Historique
Comment les donnes peuvent tre stockes et extraites
des organes priphriques? bandes magntiques:
Donnes stockes sous forme denregistrements squentiels pour constituer des fichiers
Disque magntique:
accs plus rapide aux donnes
B.FRIKH
Historique
Or, les fichiers classiques posent un certain nombre de dfauts et de contraintes Les besoins de lentreprise et la multitude des donnes manipules, ncessitent une connaissance de plus en
B.FRIKH
Historique
Les annes 60:
premire gnration des SGBDs Sparation des donnes et des programmes dapplication
Actuellement:
Les SGBD objet, les SGBD relationnel-objet
B.FRIKH
tude de cas
Considrons une compagnie dassurance vendant trois produits: Vie, Automobile, Local La compagnie est organise en 3 dpartements, chacun ayant ses propres fichiers Les fichiers et les programmes dapplication classiques sont utiliss pour effectuer les travaux de la compagnie
B.FRIKH
Condition dassurance
B.FRIKH
sinistre
B.FRIKH
P6
Rglement sinistre
P4
F2 P5
LES SINISTRES
B.FRIKH
Pb 1:
Redondance dinformations
Espace perdu
B.FRIKH
Pb2:
Incohrence (inconsistance) dinformations
On ne sait plus quelle est linformation correcte
B.FRIKH
PB 3:
Les programmes dpendent des donnes
B.FRIKH
PB 4:
Les programmes sont accessibles seulement travers des programmes dapplication
B.FRIKH
PB 5:
Les donnes disperses posent des difficults pour leur
traitement densemble
B.FRIKH
Donnes disperses
+ confidentialit
B.FRIKH
Base de donnes..?
Une base de donnes est un ensemble de donnes
structures, interdpendantes,
SGBD..?
Un systme de gestion de bases de donnes est un logiciel qui permet un utilisateur dinteragir avec la BD pour
stocker, chercher,
B.FRIKH
Description des donnes Utilisation des donnes Synchronisation daccs Confidentialit Intgrit scurit
B.FRIKH
Le SGBD introduit une exclusion mutuelle entre les utilisateurs dans le cas de conflits B.FRIKH
B.FRIKH
Exemple:
Le n du mois doit tre compris entre 1 et 12
B.FRIKH
B.FRIKH
Modles de donnes
Modle de donnes:
Lensemble des concepts qui permettent la description des donnes dune BD et les rgles dutilisation de ces concepts
modle hirarchique
B.FRIKH
Modles de SGBD
Modle hirarchique
Les donnes sont organises selon une arborescence Chaque nud correspond une classe du monde rel Les chemins reprsentent les liens entre les objets
Modle rseau:
Les donnes sont organises selon un graphe
Modle relationnel:
Fond sur la notion mathmatique de relation
Modles de SGBD
Modle objet:
organisation des donnes sous forme dinstances de classes hirarchises qui possdent leur propres mthodes
dexploitation
Implantation:
La phase qui permet de transmettre le contenu de la base de donnes au logiciel du SGBD choisi
Description des donnes via le LDD
Constitution de la premire version de la BD
Utilisation:
Interrogation de la BD, ajout / suppression de nouvelles informations, modification au moyen du LMD
B.FRIKH
Schma externe1 Schma externe2 Schma externe3 Schma externe4 Schma externe Schma conceptuel Schma interne
Schma conceptuel
Schma physique
BD
Description de La BD
La BD vue par
Linformaticien
B.FRIKH
Schma conceptuel:
description des objets du monde rel Schma indpendant des matriels et des logiciels utiliss
Schma externe:
Dcrit les visions des utilisateurs de la BD des parties du schma conceptuel
Schma physique:
Spcifie la manire de stocker les donnes sur les organes priphriques
B.FRIKH Fichiers physiques, enregistrements, index,
Couche interne
Schma interne
UTILISATEURS
Schmas externes
BD
dialogue
contrle
stockage
B.FRIKH
Niveau interne: soccupe du stockage des donnes sur les supports physiques (gestion des fichiers, des indexes, des cls) B.FRIKH
Processeurs de DML
Requtes compiles
Contraintes de scurit et dintgrit
optimiseur
Requtes optimises
Gestionnaire dexcution
Base de donnes
mta donnes
B.FRIKH
identifiant
Association
B.FRIKH
Les entits
Dfinition:
On dsigne par entit tout objet identifiable et pertinent pour lapplication
B.FRIKH
Les attributs
Dfinition:
Un attribut est une caractristique ou proprit dune entit
obligatoire ou facultatif
B.FRIKH
B.FRIKH
Les associations
Dfinition
Une association binaire entre les entits E1 et E2 est un ensemble de couples (e1,e2) avec e1 E1 et e2 E2
Reprsente un lien entre plusieurs entits, o chaque entit joue un rle dtermin
Si une association lie deux entits du mme type, elle est dite
rflexive
tudiants Ali * Fatima * Le lien inscrit dans * BD modules * Calcul numrique
Hanane *
Khalid *
* rseaux
* programmation
B.FRIKH
Cardinalits
Cardinalits: couple de valeurs (min,max) caractrisant la nature de lassociation en fonction des occurrences des entits concernes Cardinalit minimale:
nb minimum de fois o une entit est concerne par lassociation 0 les entits ne sont pas obligatoirement concernes par
lassociation
Cardinalit maximale:
Nb maximum de fois o une entit est concerne par lassociation N signifie plusieurs fois sans prciser de nombre
B.FRIKH
Nom_entit
identifiant proprits segment Ind_IP Nom longueur stage
1.N
veut
Associations 1-1
Cest une association binaire avec la cardinalit maximale 1 sur chaque lien
Cardinalits possibles:
0.1 - 0.1 0.1 - 1.1
stage
Num_stag thme responsable
B.FRIKH
Association 1- N
Une association 1-N ou pre fils est une association binaire avec une cardinalit max=N et une cardinalit max=1 Cardinalits possibles:
0.1 - 0.N 0.1 - 1.N 1.1 - 0.N
1.1 - 1.N
professeur Num_prof Nom grade module
0.N
responsable
Num_mod 1.1
B.FRIKH
Titre
Association N-N
Cest une association binaire avec la cardinalit maximale N sur chaque lien Cardinalits possibles:
0.N - 0.N 0.N - 1.N 1.N - 0.N 1.N - 1.N
1.N
Date_achat prix
diteur
B.FRIKH
Associations N-aires
Cest une association qui connecte n entits. Elle peut possder des proprits
logiciel
Num_log diteur 1.N installation
Date_install
Association rflexive
Cest une association binaire ou N-aire qui fait intervenir au moins 2 fois la mme entit
Poste de travail N_serie Adr_IP Type_poste 0.N
serveur
Les identifiants
Dfinition
Un identifiant dun TE (ou TA) est un sous ensemble minimal dattributs permettant didentifier de manire unique une occurrence du TE (ou TA) Les attributs de lidentifiant sont tels quil nexiste pas deux occurrences du TE (ou TA) qui ont la mme valeur pour ces
attributs
B.FRIKH
cinma
nom Rue, ville
B.FRIKH
parent de
B.FRIKH
B.FRIKH
B.FRIKH
modle E/A
Rgle n2:
Chaque entit doit avoir un identifiant
Rgle n3:
Les proprits rsultant dun calcul ne doivent pas figurer dans un modle E/A
B.FRIKH
Le modle relationnel
B.FRIKH
B.FRIKH
Modle de donnes
Un modle de donnes dfinit un mode de reprsentation de linformation selon trois composantes:
Des structures de donnes
Des contraintes qui permettent de spcifier les rgles que doit respecter une base de donnes
Modle relationnel
Invent par CODD IBM en 1970, bas sur le principe de relation
Association du modle E/A = relation entre entits Relation du modle relationnel = relation entre attributs
B.FRIKH
Concepts de base
Domaine Produit cartsien Relation Attribut Schma de relation Degr et cardinalit dune relation
B.FRIKH
Concepts de base
Domaine = ensemble de valeurs Exemples:
Les entiers,
Relation
Relation = sous ensemble du produit cartsien dune liste de domaines Une relation est caractrise par un nom Une relation peut tre vue comme un tableau deux dimensions
Les colonnes correspondent aux domaines
Les lignes correspondent aux tuples
voyage
Num_vol AT125 AF257 AF203 AT130 Ville_dep Casa Paris Casa Lyon Ville_arriv Paris Casa Lyon Casa
B.FRIKH
Attribut
attribut = colonne dune relation caractrise par un nom et prenant ses valeurs dans un domaine Plusieurs attributs dune relation peuvent tre dfinis sur
un seul domaine
Exemple: ville_dep et ville_arr sont dfinis sur le mme
domaine ville
B.FRIKH
Schma de relation
Schma de relation =
Le nom de la relation suivi de la liste des attributs avec leur domaine entre parenthses R (A1 : D1, A2 : D2,, An : Dn)
Exemple:
Voiture(num_veh:entier, marque:caractre(10), type:caractre(4), puissance:entier, couleur:couleur) Pour simplifier, on ne prcise pas les types
Concepts de base
Degr dune relation =
Le nombre dattributs qui participent la relation
Cardinalit = 4, degr = 3 Deux domaines: num_voyage = (AT125, AF257, AF203, AT130) ville = (casa, paris, lyon)
B.FRIKH
Cl dune relation
La cl dune relation est un ensemble minimal dattributs de la relation, tel quil nexiste pas deux tuples ayant mme valeur pour cet identifiant Cest un ensemble minimum dattributs tel que tous les autres attributs en dpendent fonctionnellement Une cl peut tre compose dun ou plusieurs attributs Une relation peut avoir une ou plusieurs cls
Une relation a toujours un identifiant qui, dans le cas le plus dfavorable, est compos de tous les attributs de la relation
Par convention, lattribut (s) constituant la cl est soulign
Exemple: etudiant (netud, nom, prnom, ge) il ny a pas deux tudiants qui ont le mme netud
B.FRIKH
B.FRIKH
B.FRIKH
1,n 1,1
origine
Mme rgle de passage quune association 1/n Cl trangre pour rfrencer lentit forte dans lentit faible La cl trangre fait partie de la cl de la relation correspondant lentit faible
B.FRIKH
B Id_B 0,n
RA (id-A, )
RB (id-B, )
RA-B (id-A, id-B, attributs-ass)
Crer les relations RA et RB correspondant aux entits A et B Crer une relation RA-B pour lassociation La cl de RA et la cl de RB deviennent des attributs de RA-B La cl de RA-B est la concatnation des cls des relations RA et RB Les attributs de lassociation deviennent des attributs de RA-B
B.FRIKH
B.FRIKH
Exemple
Fournisseur(numfour, nomprod, adr, tel, prix) Nomprod prix Numfour adr && numfour tel
Deux relations