1 bases de données avancées: base de données relationnelles 29 mai 2014 dr. rim samia kaabi

Download 1 Bases de Données Avancées: Base de données relationnelles 29 mai 2014 Dr. Rim Samia Kaabi

Post on 04-Apr-2015

108 views

Category:

Documents

5 download

Embed Size (px)

TRANSCRIPT

  • Page 1
  • 1 Bases de Donnes Avances: Base de donnes relationnelles 29 mai 2014 Dr. Rim Samia Kaabi
  • Page 2
  • 2 Normalisation dune BD Relationnelle
  • Page 3
  • Normalisation des relations cas des projets Collection des attributs NoEmp :numro dun employ Nom :nom dun employ Anne :anne dembauche dun employ NoDep :n de dpartement Intitul :nom dun dpartement Taille :nombre demploys dun dpartement NoResp :n de lemploy responsable dun dpartement NoProj :n dun projet NoChef :n d lemploy chef dun projet Temps :% de temps quun employ passe sur un projet
  • Page 4
  • Normalisation des relations Pourquoi tel ensemble de relations, plutt que tel autre ? Exemple 1 : RE1(NoEmp, NoDep, Nom, Intitul,Taille) RT1(NoEmp, NoProj,NoDep,Intitul, Anne, Temps, NoResp) RP1(NoProj, NoChef) Exemple 2 : RE2(NoEmp, NoDep, Nom, Anne, Intitul, NoResp) RD2(NoDep, Taille) RT2(NoEmp, NoProj, Temps, NoChef) Exemple 3 : Relation universelle RU(NoEmp, NoProj, NoChef, Temps, Nom, Anne, NoDep, Intitul, Taille, NoResp)
  • Page 5
  • Normalisation des relations RU(NoEmp, NoProj, NoChef, Temps, Nom, Anne, NoDep, Intitul, Taille, NoResp) Point de dpart : relation universelle R1 = RU
  • Page 6
  • Normalisation des relations Inconvnients dun mauvais choix de relations: redondances lourdeur des modifications maintient de la cohrence difficile 1re mthode de normalisation : Amlioration de la qualit du schma, par projections successives.
  • Page 7
  • Normalisation des relations Notion de dpendance fonctionnelle liens smantiques entre les donnes lmentaires. Nous nous limiterons aux dpendances fonctionnelles (DF) : elles traduisent les liens smantiques les plus frquents et quelles sont suffisantes pour dfinir les trois premires formes normales.
  • Page 8
  • Normalisation des relations : Dpendances fonctionnelles Dfinition : il existe une dpendance fonctionnelle entre deux groupes dattributs A et B dune relation R si toute valeur de A on ne peut associer, tout instant, quune et une seule valeur de B. On dit alors que B dpend (fonctionnellement) de A (not A B). A est la source de la DF et B le but. On dit aussi que A dtermine (fonctionnellement) B. Exemple : soit la relation EMPLOYE, il existe une DF entre NoEmp et Nom indiquant quun employ repr par son numro na quun seul nom : NoEmp Nom.
  • Page 9
  • Normalisation des relations : Dpendances fonctionnelles Remarque : les attributs formant la cl dune relation doivent dterminer par DF tous les autres attributs de cette relation. Proprits des DF : rflexivit : B A A B. (A = B donne A A) transitivit : A B et B C A C. pseudo-transitivit : A B et B, D C A, D C. additivit : A B et A C A B, C. dcomposition : A B, C A B et A C.
  • Page 10
  • Normalisation des relations : Dpendances fonctionnelles Dfinition : une DF est dite triviale si elle peut se dduire par les axiomes de rflexivit ou daugmentation. Dfinition : une DF A B est dite lmentaire sil nexiste aucun C A tel que C B. Dfinition : une DF A B est dite directe sil nexiste aucun C tel que A C et C B (i.e. elle ne peut tre obtenue par laxiome de transitivit).
  • Page 11
  • Normalisation des relations : Dpendances fonctionnelles Exemple : NoEmp, Nom Anne nest pas lmentaire car NoEmp Anne (qui elle par contre est lmentaire). Exemple : La DF NoEmp NoResp nest pas directe car elle peut tre obtenue par transitivit comme suit : NoEmp NoDep NoResp.
  • Page 12
  • Normalisation des relations : 1re forme normale Dfinition : une relation est en premire forme normale (1FN) si elle possde une cl et que tous ses attributs sont atomiques. Un attribut atomique est un attribut nayant un instant donn quune seule valeur ou ne regroupant pas un ensemble de valeurs. Une consquence de la 1FN est que tout attribut ne doit pas tre lui-mme une relation. Exemple1 : dans la relation PERSONNE1(NoPers, Patronyme), patronyme regroupe 2 proprits distinctes nom et prnom. Exemple2: dans la relation PERSONNE2(NoPers, Nom, Prnoms), prnom correspond en fait une liste.
  • Page 13
  • Normalisation des relations : 1re forme normale Exemple1 : relation PERSONNE1(NoPers, Patronyme), PERSONNE1bis est en 1FN :
  • Page 14
  • Normalisation des relations : 1re forme normale Exemple3 : relation ACHATS(NoCli, CA) permettant denregistrer le montant du CA des dernires annes ralis avec les clients : PERSONNE1bis est en 1FN :
  • Page 15
  • Normalisation des relations : 1re forme normale seulement en 1FN risque danomalies lors de mises jour. Par exemple, avec la relation R1 : rien sur un employ avant au moins une affectation un projet (cl de R1 constitue de NoEmp et NoProj); pb inverse si on supprime un projet termin : perte dinformations propres lemploy; modification dune donne sur un employ tous les tuples le concernant doivent tre modifis
  • Page 16
  • Normalisation des relations : 1re forme normale Do viennent ces problmes ? la connaissance dune valeur de NoEmp et de NoProj identifie de manire unique un tuple de la relation. cl = NoEmp + NoProj lattribut Temps dpend fonctionnellement du couple form par les deux attributs NoEmp et NoProj, cest-- dire de lensemble de la cl, les attributs Nom, Anne, NoDep ne dpendent fonctionnellement que dun seul attribut de la cl (NoEmp). De mme NoChef ne dpend que de NoProj.
  • Page 17
  • Normalisation des relations : 2me forme normale Dfinition : une relation est en deuxime forme normale (2FN) si elle est en 1FN et que toute DF entre la cl et les attributs non-cls est lmentaire. Remarque : ceci revient dire que tout attribut non-cl doit dpendre fonctionnellement de lensemble de la cl. Il faut donc viter la configuration suivante :
  • Page 18
  • Normalisation des relations : 2me forme normale NoEmp, NoProj Temps NoEmp Nom, Anne, NoDep NoProj NoChef on clate R1 en trois relations lmentaires : R2(NoEmp, Nom, Anne, NoDep, Intitul, Taille, NoResp) R3(NoEmp, NoProj, Temps) R4(NoProj, NoChef) R1 nest pas en 2FN car :
  • Page 19
  • Normalisation des relations : 2me forme normale extensions des 3 relations en 2FN :
  • Page 20
  • Normalisation des relations : 2me forme normale Exemple : dans la relation R2 : R2(NoEmp, Nom, Anne, NoDep, Intitul, Taille, NoResp). Si le numro du responsable dun dpartement change, il faut faire la modification dans tous les tuples concerns. Do viennent ces problmes ? Encore des problmes en cas de mise jour (cohrence, modification multiple de la mme chose) Seulement 2FN
  • Page 21
  • Normalisation des relations : 3me forme normale A quoi est d ce problme ? A une DF transitive (NoEmp NoDep NoResp). Dfinition : une relation est en troisime forme normale (3FN) si elle est en 2FN et que toute DF entre la cl et les attributs non-cls est directe. Remarque : ceci revient dire quil nexiste aucune DF entre deux attributs non-cls. Il faut donc viter :
  • Page 22
  • Normalisation des relations : 3me forme normale En particulier pour R2 on a : NoDep Intitul, Taille, NoResp Solution : dcomposer R2 en R5 et R6 de manire mettre en vidence la DF NoDep NoResp : R5(NoEmp, Nom, Anne, NoDep) R6(NoDep, Intitul, Taille, NoResp)
  • Page 23
  • Normalisation des relations : 3me forme normale Cela donne les tableaux suivants : On obtient finalement les quatre relations en 3FN suivantes : R3(NoEmp, NoProj, Temps)i.e. TRAVAILLE R4(NoProj, NoChef)i.e. PROJET R5(NoEmp, Nom, Anne, NoDep)i.e. EMPLOYE R6(NoDep, Intitul, Taille, NoResp)i.e. DEPART
  • Page 24
  • 24 FNBC Forme normale de Boyce-Codd 2FN: limine les anomalies cres par des dpendances entre parties de cl et attributs non cl 3FN: limine les anomalies cres par des dpendances entre les attributs non cls Quid des dpendances de parties de cls entre elles ou dattributs non cls vers une partie de cl???? BCNF (BCNF)
  • Page 25
  • 25 FNBC Forme normale de Boyce-Codd Une relation est en BCNF ssi les seules DFs lmentaires sont celles dans lesquelles une cl entire dtermine un attribut R (K1, K2, X, Y) (BCNF) R doit tre dcompose en R1(K1,K2,X) et R2(Y,K1)
  • Page 26
  • 26 FNBC: exemple Localisation (cru, pays, region, qualit) Avec les dpendances: Cru, pays region Cru, pays qualit Region pays Localisation nest pas en BCNF mais en 3FN Dcomposition possible: CRUS(cru, pays, qualit) REGION (region, pays) Non en BCNF
  • Page 27
  • 27 Dcomposition Enseignement Enseignement (NomEtud, Matire, Prof) Soit la dcomposition: T1 (Prof, Matire)T2 (NomEtud, Prof) T1 + T2 : sans perte d information mais avec perte de la DF: (NomEtud, Matire) Prof il faut ajouter la C.I.: un tudiant suit une matire donne avec un seul professeur
  • Page 28
  • 28 3FN: dfinition plus gnrale Plusieurs identifiants et DF lmentaire A->B Cond1: A est un identifiant Cond2: B fait part d'un identifiant FNBC si Cond1 3NF (plusieurs identifiants) si Cond1 OR Cond2 Nfournnom-fourn Nproduit prix n Fournisseur (Nfourn, nom-fourn, Nproduit, prix)
  • Page 29
  • Dpendance multivalue BCNF nest pas suffisante pour liminer compltement les redondances Dpendance multivalue: Etudiant (ne, cours, sport) Pas de DF DM x y On dit quil y a DM de y sur x si tant donn des valeurs de x, il y a un ensemble de valeurs de y associes cet ensemble est indpendant des autres attributs
  • Page 30
  • Dpendance multivalue (exemple) Vol(NV, Avion, Pilo

Recommended

View more >