La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1© INTEvry, 29-31 mai 2000 Programme Introduction aux BD et aux SGBD Le modèle relationnel Le langage de requête SQL +La conception dune BD relationnelle.

Présentations similaires


Présentation au sujet: "1© INTEvry, 29-31 mai 2000 Programme Introduction aux BD et aux SGBD Le modèle relationnel Le langage de requête SQL +La conception dune BD relationnelle."— Transcription de la présentation:

1 1© INTEvry, mai 2000 Programme Introduction aux BD et aux SGBD Le modèle relationnel Le langage de requête SQL +La conception dune BD relationnelle Protection des informations Perspectives des BD

2 Comment concevoir une base de données ?

3 3© INTEvry, mai 2000 Dictionnaire de données liste des rubriques + renseignements associés –des indications comme la nature et le type, –lentité ou lassociation de rattachement, –les contrôles, –la date de création et lauteur, –les autorisations de mise à jour, –le nombre doccurrences de valeurs, –des exemples de valeurs, –le contexte dutilisation, –....

4 4© INTEvry, mai 2000 Dictionnaire de données (2) code libellé nature : –rubriques non calculées (NC) : par exemple le nom dun client –les paramètres (P) : par exemple le taux de TVA –les rubriques calculées (C) : par exemple le montant T.T.C. sur une facture –les rubriques calculées incrémentées (CI) : par exemple le numéro dune facture commentaires

5 5© INTEvry, mai 2000 Epuration du dictionnaire de données Rubrique ayant plusieurs significations => remplacée par plusieurs –Date peut être remplacée par date_commande, date_livraison; Elimination des synonymes –numéro client et code_client : idem; Rubriques décomposées en sous rubriques => décomposition –Par exemple, une adresse peut être décomposée en un numéro de rue, un nom de rue, un code postal et une ville. La notion dadresse disparaît alors Outils daide à la constitution dun DD : AGL

6 6© INTEvry, mai 2000 Présentation du dictionnaire de données Un dictionnaire de données se présente sous forme tabulaire:

7 7© INTEvry, mai 2000 Théorie de la normalisation organisations : –Bains(nn, nom, prénom, qualité, date, durée, np, nomp, type région, pollution) et –Nageur(nn, nom, prénom, qualité) Plage(np, nomp, type, région, pollution) Baignade(nn, np, date, durée)

8 8© INTEvry, mai 2000 Mauvaise conception –Redondance des données –Incohérence en modification –Anomalie dinsertion –Anomalie de suppression But

9 9© INTEvry, mai 2000 Modélisation –contraintes sur les données –réalité –limites à la base Définition –Un attribut B dépend fonctionnellement de A si, étant donné une valeur de A, il lui correspond une unique valeur de B (quel que soit linstant t) –A détermine B Notation A B Dépendance fonctionnelle (DF)

10 10© INTEvry, mai 2000 L attribut A peut être composé de plusieurs attributs. –immatriculation, date no_propriétaire DF : propriété définie sur tous les tuples, vérifiée en permanence DF non symétrique en général –nom nn nest pas vérifiée. Deux nageurs différents peuvent posséder le même nom (Dupont, Martin) Dépendance fonctionnelle (2)

11 11© INTEvry, mai 2000 Exemples nn nom ? nn prénom ? nom, prénom qualité ? nn qualité ? np nomp ? np région ? np pollution ? np type ? Région np ? nom, région np ?

12 12© INTEvry, mai 2000 Réflexivité –Y X X Y Augmentation –X Y XZ YZ Transitivité –X Y et Y Z X Z Axiomes dArmstrong

13 13© INTEvry, mai 2000 Propriétés déduites Union –X Y et X Z X YZ Pseudo-transitivité –X Y et YW Z XW Z Décomposition –X Y et Z Y X Z

14 14© INTEvry, mai 2000 Dépendance fonctionnelle élémentaire DF + Axiomes => toutes les DF DF élémentaire : DF non déductibles Une dépendance fonctionnelle X A est dite élémentaire si –A nest pas inclus dans X –il nexiste pas X inclus dans X tel que X A famille génératrice = couverture minimale Exemple : –nomp, région pollution –nomp pollution ou région pollution faux

15 15© INTEvry, mai 2000 Graphe de dépendances fonctionnelles noeuds = attributs arcs = DF

16 16© INTEvry, mai 2000 Fermeture transitive FT = DF + DF obtenues par transitivité Notée F + Nouvelles DF : –nomp, région type –nomp, région pollution.

17 17© INTEvry, mai 2000 Couverture minimale Définition –sous ensemble minimum de dépendances fonctionnelles élémentaires permettant de générer toutes les autres Exemple –(nn nom, nn prénom, nn qualité, np nomp, np région, nomp, région pollution, nomp, région type, nomp, région np) Théorème –Tout ensemble de dépendances fonctionnelles admet une couverture minimale, en général non unique

18 18© INTEvry, mai 2000 Clé dune relation Définition –ensemble minimum dattributs permettant de déterminer tous les autres Soit R(A 1, A 2,..., A n ) un schéma de relation. Soit F + lensemble des dépendances fonctionnelles associées à R. Soit X un sous-ensemble dattributs de R. X est une clé de R ssi : –X A 1, A 2,..., A n –il nexiste pas de sous-ensemble Y de X tel que Y A 1, A 2,..., A n

19 19© INTEvry, mai 2000 Clé dune relation (2) Exemple –nn est une clé de la relation nageur Remarques –Plusieurs clés peuvent être candidates pour une même relation –Dans lécriture du schéma, la clé est soulignée

20 20© INTEvry, mai 2000 Décomposition dune relation

21 21© INTEvry, mai 2000 Décomposition dune relation (2) Décomposition sans perte Décomposition préservant les DF Décomposition dun schéma de relation –La décomposition dun schéma de relation R(A 1, A 2,..., A n ) est sa substitution par un ensemble de schéma de relations R 1, R 2,..., R p telles que : schéma(R) schéma(R 1 ) schéma(R 2 )... schéma(R p )

22 22© INTEvry, mai 2000 Décomposition sans perte La décomposition dun schéma de relation R(A 1, A 2,..., A n ) par un ensemble de schéma de relations R 1, R 2,..., R p est sans perte ssi : –R R 1 > < R p Une décomposition dune relation en deux relations est sans perte si lattribut de jointure est clé dune des deux relations

23 23© INTEvry, mai 2000 Décomposition préservant les DF La décomposition dun schéma de relation R(A 1, A 2,..., A n ) par un ensemble de schéma de relations R 1, R 2,..., R p préserve les dépendances fonctionnelles si la fermeture transitive de R est la même que lunion des fermetures transitives de chacune des relations

24 24© INTEvry, mai 2000 Formes normales Première forme normale Deuxième forme normale Troisième forme normale

25 25© INTEvry, mai ère forme normale Définition –Une relation est en première forme normale si tous ses attributs sont atomiques. Un attribut atomique nest pas : –multivalué (liste de valeurs) –composé (structuré en sous-attributs) Pour toute relation en première forme normale, un attribut représente une donnée élémentaire du monde réel

26 26© INTEvry, mai 2000 Exemple Bains(nn, np, date, durées) –«durées» : liste des durées de baignade - attribut multivalué –Cette relation nest donc pas en première forme normale Solutions : –nombre de baignades limité par jour Bains(nn, np, date, durée1, durée2, durée3) –nombre illimité Bains(nn, np, date, durée) autant de tuples quil y a de baignade

27 27© INTEvry, mai 2000 Deuxième forme normale Définition –Une relation est en deuxième forme normale ssi: elle est en première forme normale tout attribut non clé dépend de la totalité de la clé R(A,B,C,D) interdit ok

28 28© INTEvry, mai 2000 Deuxième forme normale (2) Exemple –Plage(nomp, région, type, pollution) est-elle en deuxième forme normale ? Remarque –Toute relation contenant une clé non composée est automatiquement en deuxième forme normale si elle est en première forme normale

29 29© INTEvry, mai 2000 Troisième forme normale Objectif : élimination des redondances dues aux dépendances fonctionnelles déduites par transitivité Définition –Une relation est en troisième forme normale ssi: Elle est en deuxième forme normale Si tout attribut non clé dépend directement de la clé, il nexiste donc aucune dépendance avec un attribut non clé R(A,B,C,D,E) interdit ok

30 30© INTEvry, mai 2000 Propriétés Toute relation R admet au moins une décomposition en troisième forme normale telle que : –elle préserve les dépendances fonctionnelles –elle est sans perte Exemple –plage(np, région, type, pollution) –Hypothèse : région type => plage nest pas en troisième forme normale –Transformation plage(np, région, pollution) région (région, type)

31 31© INTEvry, mai 2000 Algorithme de décomposition en troisième forme normale Pré : connaissance du contenu de la relation universelle + DF Principe de lalgorithme : –A partir du graphe G des DF, calculer une couverture minimale C –Editer lensemble des attributs isolés dans une même relation (tous sont clés) –Recherche le plus grand ensemble X dattributs qui détermine dautres attributs –Editer la relation R(X, A 1,..., A n ) –Supprimer les DF X A 1,.., X A n du graphe de couverture minimale C –Supprimer les attributs isolés de C –Reprendre lopération à partir de létape 3 jusquà ce que C soit vide

32 32© INTEvry, mai 2000 Conclusions Importance de la normalisation des relations Autres formes normales

33 33© INTEvry, mai 2000 Modèle entité-association Concepts et définitions –Entité –Type dentité –Domaine –Attribut –Clé –Association –Type dassociation

34 34© INTEvry, mai 2000 Traduction dun modèle entité- association vers un modèle relationnel Exemple

35 35© INTEvry, mai 2000 Entité Entité = objet (concret ou abstrait) Existe en tant que tel, sans être soumis à lexistence dune autre entité Exemples : –Produit X –Module denseignement de mathématiques –Lion

36 36© INTEvry, mai 2000 Type dentité Regroupement des entités en fonction de leurs caractéristiques communes => Type dentité Exemple : –Regrouper éléphant, tortue et zèbre en un type dentité : « animal » –Informations en commun (par leur structure) : poids, taille, alimentation,....

37 37© INTEvry, mai 2000 Domaine Ensemble de valeur A partir de type communs : –entier, chaîne de caractères,... Plus finement : –par extension en listant les valeurs possibles –en définissant des plages de valeurs Exemples : –âge : entier –âge : entier compris entre 0 et 130 –situation familiale : ensemble de valeurs (célibataire, marié, veuf, divorcé)

38 38© INTEvry, mai 2000 Attribut Attribut : propriété dun type dentité Pour chaque entité dun type dentité une valeur est associée à cet attribut Exemple : –Type dentité animal, Entité éléphant : Taille = 2,30 m Poids = 1000 kg Alimentation = 'végétarien'

39 39© INTEvry, mai 2000 Clé Attribut (ou groupe dattributs) particulier dun type dentité Différencie toutes les entités dun même type dentité Exemple : –Numéro détudiant –Plaque dimmatriculation

40 40© INTEvry, mai 2000 Représentation graphique

41 41© INTEvry, mai 2000 Association Association dentités : regroupement dentités Traduit plutôt une action entre les entités Exemple : –Alimenter :association entre un le lion Clarence et le gardien John –Se baigner: association entre le nageur Gaël et la plage de Binic

42 42© INTEvry, mai 2000 Type d association Regroupement des associations en type dassociation Peuvent posséder des attributs Attribut dun type dassociation: propriété dépendant de tous les types dentités intervenant dans lassociation Exemple: la date de prise en charge dun animal par un gardien dépend de gardien + animal

43 43© INTEvry, mai 2000 Attention : une association ne possède pas de clé!!!! Représentation graphique

44 44© INTEvry, mai 2000 Exemples Un enseignant est responsable dun module....

45 45© INTEvry, mai 2000 Exemples (2) Une personne peut être le parent (père ou mère) dune autre...

46 46© INTEvry, mai 2000 Exemples (3) A vous de jouer : le type dassociation "inscrit" défini entre les types dentités "étudiant" et "module" a pour attribut le numéro dordre dinscription pour ce module (létudiant sinscrit pour la 1ère, la 2ème fois à ce module,..)

47 47© INTEvry, mai 2000 Remarques On ne crée jamais de type dentité pour représenter un ensemble dentité réduit à un seul élément Un attribut napparaît quà une seule place sil ny a pas de polysèmes (mots ayant plusieurs sens). Pas de duplication de linformation! Toutes les rubriques du DD ne deviennent pas attributs du modèle. Attribut : rubrique non paramètre, non calculée

48 48© INTEvry, mai 2000 Différentes configurations dassociations Associations binaires Associations n-aires

49 49© INTEvry, mai 2000 Associations binaires de type 1:1 À une entité E peut correspondre par lassociation A au plus une entité de F À une entité F peut correspondre par lassociation A au plus une entité de E

50 50© INTEvry, mai 2000 Exemple

51 51© INTEvry, mai 2000 Associations binaires de type 1: n À une entité E peut correspondre par lassociation A plusieurs entités de F À une entité F peut correspondre par lassociation A au plus une entité de E

52 52© INTEvry, mai 2000 Exemple

53 53© INTEvry, mai 2000 Associations binaires de type n:m À une entité E peut correspondre par lassociation A plusieurs entités de F À une entité F peut correspondre par lassociation A plusieurs entités de E

54 54© INTEvry, mai 2000 Exemple

55 55© INTEvry, mai 2000 Association n-aires Plus de deux entités Par exemple, type dassociation ternaires. Case demploi du temps déterminée que si lon a –lhoraire –le jour –la matière –la classe Type dassociation quaternaire

56 56© INTEvry, mai 2000 Cardinalités dun couple entité- association La cardinalité dun couple entité-association E, A est un couple de nombre m, n où : –m définit le nombre minimum dassociation de type A pouvant exister pour une entité E –n définit le nombre maximum dassociation de type A pouvant exister pour une entité E

57 57© INTEvry, mai 2000 Valeurs caractéristiques Valeurs caractéristiques du minimum : –0 –1 –Entier plus grand que 1 Valeurs caractéristiques du maximum: –1 –n –Entier plus grand que 1

58 58© INTEvry, mai 2000 Représentation graphique

59 59© INTEvry, mai 2000 Exemples

60 60© INTEvry, mai 2000 Rôle

61 61© INTEvry, mai 2000 Spécialisation/généralisation dentités Spécialisation dun type dentité –Définir des sous-types dentités –Affiner la représentation des données Généralisation –Créer un sur-type dentité –Mettre en facteur les attributs communs à plusieurs types dentités

62 62© INTEvry, mai 2000 Exemple Personne Femme Homme EffectuerService

63 63© INTEvry, mai 2000 Intervention de la théorie de la normalisation Types dentités Cardinalités Attributs des types dassociation

64 64© INTEvry, mai 2000 Type dentité Clé dun type dentité E : ensemble dattributs qui détermine fonctionnellement tous les autres attributs de ce type dentité Un type d'entité doit vérifier les trois formes normales

65 65© INTEvry, mai 2000 Cardinalités Association ?,1 –Si la cardinalité du couple (E, A) où E est un type dentité et A est un type dassociation est (?,1) => une occurrence de E participe au plus à une association de A –Cette occurrence détermine donc les autres entités participant à cette association –Toute clé de E détermine fonctionnellement les clés des autres types dentité participants

66 66© INTEvry, mai 2000 Attributs de type dassociation Si T est un attribut dun type dassociation A => T dépend fonctionnellement de lensemble des clés de chacun des types dentité participants Exemple: –date_affect du type dassociation diriger défini entre les deux types dentités Enseignant et département : num_ens, num_dept date_affect => aucun type dassociation ne peut posséder de clé

67 67© INTEvry, mai 2000 Construction du schéma entité- association Méthode descendante Méthode ascendante

68 68© INTEvry, mai 2000 Méthode descendante Point de départ : univers du discours Etapes: 1- DD + règles de gestion 2- Recensement des entités et des associations (intuitif) 3- Placement des attributs au sein des types dentités et dassociation 4- Calcul des cardinalités (DF)

69 69© INTEvry, mai 2000 Méthode descendante (2) 5-Vérification : Respects des règles du formalisme E/A –Absence de répétition dattribut –Une clé par type dentité –Vérifier les DF –Vérifier les cardinalités /règles de gestion

70 70© INTEvry, mai 2000 Méthode descendante (3) Vérification :(suite) Normalisation : –Vérifier la 3 FN pour tous les types dentité –Vérifier les types dassociation n-aire : décomposition en plusieurs types dassociation de degré plus faible –Supprimer les types dassociations qui se déduisent par transitivité dautres types dassociations 6-Validation : Par lutilisateur Par lanalyse des traitements

71 71© INTEvry, mai 2000 Méthode ascendante Point de départ : sorties Méthode de Flory Etapes : 1- Recensement des rubriques (existantes ou souhaitées) => DD 2- Rechercher les DF (matrice carrée) 3- Couverture minimale 4- Elimination des circuits

72 72© INTEvry, mai 2000 Méthode ascendante (2) 5- Construction du schéma : Recherche des clés primaires : –S : ensemble des attributs correspondant à des sommets du graphe des dépendances fonctionnelles G –B : ensemble des attributs étant le but dau moins une dépendance fonctionnelle et origine dau moins une dépendance fonctionnelle –Chaque attribut de S ou de B est une clé primaire dun des types dentité du modèle entité-association

73 73© INTEvry, mai 2000 Méthode ascendante (3) Construction du schéma : (suite) Recherche des types dentité : –Chaque attribut de S et de B devient clé d un type dentité E –Si s est dans S, les attributs déterminés par s nétant ni dans S ni dans B sont attributs de E; Recherche des types dassociations : –Deux clés définies liées par un arc dans G induisent une association de type 1,n –La cardinalité (?,1) est rattachée à lentité dont la clé est source de la dépendance fonctionnelle a ba ?,1 1,?b

74 74© INTEvry, mai 2000 Méthode ascendante (4) Construction du schéma : (suite) Recherche des types dassociations : –un arc de G provenant de plusieurs sommets (n sommets) vers un attributs non clé se traduit par un type dassociation n-aire A de type n:m associant les types dentités correspondant aux sommets

75 75© INTEvry, mai 2000 Méthode ascendante (5) Construction du schéma : (suite) Recherche des types dassociations : –un arc G provenant de plusieurs sommets (p sommets) et allant vers un attribut clé constitue un type dassociation (p+1)-aire; –Ajouter les associations sans attribut (non déductibles des DF) 6- Validation

76 76© INTEvry, mai 2000 Remarques Peu de types dassociation ternaire ou plus Abus de langage –Entité à la place de type dentité –Association à la place de type dassociation –Entité = objet ; Entité = occurrence dentité –Type dentité = concept abstrait détaché de la réalité Modèle entité-association = modèle entité-relation Représentation graphique variable Rédiger des hypothèses!

77 77© INTEvry, mai 2000 Traduction dun modèle entité- association vers un modèle relationnel Exemple

78 78© INTEvry, mai 2000 Règle 1 Type d'entité -> relation Attribut atomique -> constituant (attribut) Attributs composites -> n constituants Attribut(s) clé(s) -> clé candidate Exemple –Etudiant(No_etu, Nom_etu, Adr_etu) –Cours(Code, Libellé) –Prof(Nom_prof, Prénom)

79 79© INTEvry, mai 2000 Règle 2 Clé associée à E1 (ou E2) -> attribut de E2 (ou E1) Attributs de R -> attributs de E2 (ou E1) Exemple: –Etudiant(No_etu, Nom_etu, Adr_etu, No_plaque)

80 80© INTEvry, mai 2000 Règle 3 Clé associée à E1 -> attribut de E2 Attributs de R -> attributs de E2 Exemple –Cours(Code, Libelle, Prof_resp)

81 81© INTEvry, mai 2000 Règle 4 Création d'une nouvelle relation R Clé de E1 + Clé de E2 -> clé de R Attributs de R-> Attributs de R Exemple –Inscription(No_étudiant, No_cours, Date_inscription)

82 82© INTEvry, mai 2000 Règle 5 Création d'une nouvelle relation R Attribut multivalué -> constituant Clé du type d'entité associé -> constituant Clé de la relation : tout le schéma Exemple: –Fonctions(Nom_enseig, Fonction)

83 83© INTEvry, mai 2000 Résultat Prof(Nom_prof, Prénom) Etudiant(No_etu, Nom_etu, Adr_etu, No_plaque) Cours(Code, Libelle, Prof_resp) Inscription(No_étudiant, No_cours, Date_inscription) Fonctions(Nom_enseig, Fonction)

84 84© INTEvry, mai 2000 Remarques Règles de traduction => relations en 3ème FN Bon schéma E/A => bon schéma relationnel


Télécharger ppt "1© INTEvry, 29-31 mai 2000 Programme Introduction aux BD et aux SGBD Le modèle relationnel Le langage de requête SQL +La conception dune BD relationnelle."

Présentations similaires


Annonces Google