1 / 76

METHODE DE CONCEPTION D ’UN SCHEMA RELATIONNEL DE C. DATE & T. CODD

METHODE DE CONCEPTION D ’UN SCHEMA RELATIONNEL DE C. DATE & T. CODD. Professeur Serge MIRANDA Université de Nice Sophia Antipolis Directeur du Dess MBDS de l’ UNSA. Méthode pratique (utilisée dans le cours « Administrateur BD » chez IBM) Version Anglaise de cette méthode présentée dans :

thora
Download Presentation

METHODE DE CONCEPTION D ’UN SCHEMA RELATIONNEL DE C. DATE & T. CODD

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. METHODE DE CONCEPTION D ’UN SCHEMA RELATIONNEL DE C. DATE & T. CODD Professeur Serge MIRANDA Université de Nice Sophia Antipolis Directeur du Dess MBDS de l’ UNSA Méthode pratique (utilisée dans le cours « Administrateur BD » chez IBM) Version Anglaise de cette méthode présentée dans : « RELATION DB : Selected writing », C. DATE, Addison Wesley, 1986 Version française dans : « COMPRENDRE et CONCEVOIR des BD RELATIONNELLES » S. MIRANDA, Editest, 1988 et livre DUNOD 2001

  2. APPREHENSION DE LA REALITE ? 1) LOI D ’INCERTITUDE D ’HEIZENBERG (1927) : « Les concepts humains ne pourront pas décrire la réalité (l’observateur déforme) ». 2) THEORIE D ’INDECIDABILITE DE GODEL (1931) : «  Aucun système ne permet de s’auto-décrire (d’où niveau META) »

  3. PLAN I INTRODUCTION II L ’APPROCHE SYNTHETIQUE : Classification des Entités et Définition des « Relations » III L ’APPROCHE ANALYTIQUE Normalisation des relations IV EXEMPLE

  4. INTRODUCTION « L ’œuvre d ’art nous apprend que nous n ’avons pas vu ce que nous voyons » Paul Valéry « Pourquoi faire simple quand c ’est si facile de tout compliquer » J.L. Godard

  5. LA MODELISATION DES DONNEES CONCRET INACCESSIBLE UNIVERS REEL MODELE DE DONNEES SCHEMA DE DONNEES ABSTRAIT MANIPULABLE

  6. MODELE DE DONNEES ? STRUCTRUES MODELE DE DONNEES OPERATEURS REGLES D ’INTEGRITE + (THEORIE FORMELLE)

  7. MODELE DE DONNEES ? Modèles « Informatiques » - 1968- 1988 (Ex : IMS, DBTG,..) Modèles « Mathématiques » –1980 – 2000 (Ex : Modèle Relationnel, SQL2) Modèles « Sémantiques » –1990- 2010 (Ex : Modèles Objet, OR, SQL3) )

  8. TYPES PRINCIPAUX D ’ABSTRACTION (Modèles de données « sémantiques ») AGREGATION : [« PART OF »] PILOTE = {PL#, PLNOM, ADR} GENERALISATION : [« IS - A »] employé pilote hôtesse mécanicien ASSOCIATION/COUVERTURE : [« SET OF »] équipage pilote hôtesse

  9. TYPE D ’ABSTRACTIONS ET MODELE RELATIONNEL • La seul abstraction représentée c ’est l ’agrégation « simple » • (types simples d ’attributs) • Les autres types d ’abstractions : • généralisation (IS-A) • association/couverture (Set-of) • récursivité • version de (Version of) • doivent être représentées en fonction de l ’agrégation simple. • Seul le produit cartésien intervient dans la définition d ’une relation • (pas l ’ensemble des parties) Modèle Relationnel de données Agrégation Simple Typage statique (et réduit)

  10. METHODOLOGIE DE CONCEPTION D ’UN SCHEMA RELATIONNEL • 2 phases conceptuelles Définition d ’un schéma conceptuel avec tous les types d ’abstraction Définition du schéma relationnel avec seulement l ’agrégation simple

  11. METHODE DE CONCEPTION D ’UNE BASE DE DONNEES (RELATIONNELLE) DANS LA PRATIQUE UNIVERS REEL Modèle entité association étendu NIAM Modèle RM-T de Codd MODELE DE DONNEES CONCEPTUEL SCHEMA CONCEPTUEL Avec le maximum d ’informations sémantiques : (agrégation, généralisation, association, récursion) MODELE DE DONNEES LOGIQUE Modèle orientés « réalisation » : Hiérarchique, Réseau, Relationnel SCHEMA LOGIQUE

  12. METHODE DE CONCEPTION D ’UNE BASE DE DONNEES RELATIONNELLE : la méthode « CODD & DATE » UNIVERS REEL APPROCHE SYNTHETIQUE Classification des « Entités » composant l ’univers à modéliser et Génération de « Relations » SCHEMA « RELATIONNEL » APPROCHE ANALYTIQUE Définition de « bonnes » relations au sens de CODD SCHEMA RELATIONNEL NORMALISE

  13. OBJECTIF D ’UNE METHODE DE CONCEPTION RELATIONNELLE • Faire cohabiter plusieurs perceptions de l ’univers réel • Indiquer simplement quand on doit créer les relations de « base » • avec leurs clés primaires • Indiquer simplement où placer les clés étrangères dans les relations • de base

  14. METHODE DE CODD AND DATE DE CONCEPTION D ’UNE SCHEMA RELATIONNEL • 1ère phase : Définition des relations de base/CP et des clés étrangères • définition et classification des entités • définition des « relations de base » associées avec les : • clés primaires • clés étrangères • identification du schéma relationnel • 2ème phase : Définition des « bonnes relations » • pour les opérations • de mise à jour  normalisation • d ’interrogation  dénormalisation

  15. I L ’APPROCHE SYNTETIQUE de la méthode de Codd&Dte I - CONCEPTS DE BASE - Notion d ’Entité et de Clé - Classification des Liens entre entités - Classification des Propriétés - Classification des Entités II - METHODOLOGIE DE CONCEPTION - Présentation générale du processus de conception - Analyse des 4 étapes de la démarche - Conseils méthodologiques III - CAS PARTICULIERS - Représentation du Lien Sous-Type (Généralisation) - Interblocage d ’Initialisation

  16. « ROND » ? FORME ? ETAT ? BALLON ? INDIVIDU ?

  17. CONCEPTS DE BASE 1 m 70 Rouge Bleu Rond DONNEE TAILLE COULEUR FORME PROPRIETE PERSONNEBALLON ENTITE VOITURE PROPRIETAIRE LIEN

  18. CONCEPT STRUCTURE DE BASE « Tout ce qui est DIFFERENTIABLE » « Any distinguishable object »  « OBJET » (début définition dans composante structurelle) (BD-O2) Identifiant de l ’Entité ENTITE 1 CLE (primaire) Note : La référence à une entité se fera par sa clé Une seule structure conceptuelle RELATION 1 = Ensemble (SET) de « propriétés » Ensemble (SET) de « Valeur/Données » Paradigme VALEUR

  19. LES LIENS ? Liens entre structures de données = liens entre ENSEMBLES « All things are connected » Seattle (chef indien) cité par Ph. Labro (« Un été Américain »)

  20. CLASSIFICATION DES LIENS • LIENS FONCTIONNELS N : 1 « DETERMINATION » • Soient A et B, deux propriété ou Groupes de Propriétés (Entités) : DETERMINANT DETERMINE N : 1 B A 1 Au plus 1 0.1 ou N 1 Exemples : VILLE_DEPART VILLE_ARRIVEE N : 1 NUMERO_VOL NOM_PILOTE ADRESSE_PILOTE N : 1 NUMERO_PILOTE N : 1 FEMME HOMME MARIAGE (polyandrie)

  21. LIENS N : 1

  22. LIENS FONCTIONNELS N : 1 « DETERMINATION » • REGLES DE GENERICITE (AMSTRONG) A • Réflexivité • Transitivité • Augmentation du Déterminant N : 1 A N : 1 B C N : 1 D B A Numero_Vol Ville_Depart Numero_Vol Ville_Depart Heure_Depart

  23. LIENS 1 : N

  24. LIENS HIERARCHIQUES 1 : N (inverse des liens N : 1) Soient A et B, deux Propriétés ou Groupes de Propriétés (Entités) : 1:N B A 1 0,1 ou N Au plus 1 1 Exemples : 1:N PILOTE VOL 1:N FEMME HOMME MARIAGE (polygamie) Règles : Règles de généricité Règles de réciprocité 1:N B A N : 1

  25. LIENS N : M

  26. LIENS MAILLES N : M Soient A et B, deux Propriétés ou Groupes de Propriétés (Entités) : N : M B A 1 0,1 ou M 0,1 ou N 1 Exemples : N : M PILOTE AVION N : M FEMME HOMME MARIAGE (mariage de groupe) Règles : Règles de généricité Règles de symétrie N : M B A 1:N 1 : M C

  27. CLASSIFICATION DES ENTITES (jargon secondaire) Entités indépendantes ex : PILOTE, AVION, VOL, DEPARTEMENT « STATIQUES » Entités dépendantes d ’autres entités (liens MULTIVALUES) « DYNAMIQUES » « ASSOCIATIVES » N : M Entités représentant un lien N : M ex : VOL représente le lien N : M PILOTE AVION « DESCRIPTIVES » 1 : N Entités dont la seule fonction est de décrire une autre entité (lien 1 : N avec contrainte d ’existence ex : PIL-ENFANT est « descriptive » de PILOTE 1 : N PILOTE PIL-ENFANT 1 : N 1 : N PILOTE VOL , AVION VOL

  28. CLASSIFICATION DES ENTITES « DETERMINANTES » N : 1 (liens MONOVALUES) Quel que soit son type, une entité peut DERMINER (lien N : 1) une autre entité Ex : N:1 PILOTE DEPARTEMENT N:1 N:1 VOL VOL AVION PILOTE ,

  29. CLASSIFICATION DES ENTITES Existence perçue indépendante Type de lien Type d ’entité Exemple PILOTE AVION EMPLOYE DEPARTEMENT VOL Statique - OUI Dynamique NON - NON N : M associative VOL (PILOTE, AVION) PIL-ENFANT (la seule raison d ’être de PIL-ENFANT est de décrire les enfants d ’un pilote VOL 1 : N descriptive NON N : 1 Déterminante Un EMPLOYE détermine un DEPARTEMENT Un VOL détermine un PILOTE et un AVION NON Une même entité VOL peut être perçue de 3 manière indépendantes : - statique (et indépendante), - associative, - descriptive

  30. TERMINOLOGIE SUR LA CLASSIFICATION DES ENTITES GB (DATE86) FR (MIRA88 et MIRA2001 ) Kernel Statique Association Associative (N : M) Descriptive (1 : N) Characteristics Déterminante (N : 1) Referencing RM-T de CODD (80)

  31. REPRESENTATION GRAPHIQUE DE WINSBERG (1986) ENTITE STATIQUE PILOTE ENTITE DESCRIPTIVE (Lien 1:N) (N) (1) ENFANT Clé étrangère au niveau de la plume de la flèche AVION ENTITE ASSOCIATIVE (Lien N:M) VOL PILOTE DETERMINATION (LIEN N : 1) DEPARTEMENT (N) (1)

  32. REPRESENTATION GRAPHIQUE SIMPLIFIEE Entité traduite par une relation / table de base Lien N : 1 notation fonctionnelle (rien de plus simple et cohérent) indiquant la présence d ’une clé étrangère au niveau de la plume. (Possibilité d ’étiqueter une flèche par un prédicat bidirectionnel comme avec NIAM dans le cas de l ’existence de plusieurs liens entre les mêmes entités).

  33. REPRESENTATION GRAPHIQUE (1986) EXEMPLE : AIRBASE EMPLOYE (E#) (E#) HOTESSE DEPARTEMENT (D#) Généralisation (E#) STEWARD (D#, E#) PILOTE (PL#) AVION (AV#) (PL#) PILENFANT Agrégation (PL#, AV#) VOL (PL#) PILFORM Entité (correspondant à une relation de base du schéma) La CP est indiquée dans le rectangle.La CE est indiquée en dehors Lien fonctionnel N:1 (présence d ’une clé étrangère au niveau de la plume)

  34. PRESENTATION Le processus consiste à remplir progressivement un tableau décrivant les entités et leurs propriétés au fur et à mesure de leur définition. Le schéma de Winsberg peut être élaboré parallèlement. PROPRIETES ENTITES IDENTIFICATION clé primaire REFRENCE clé étrangères CARACTERISTIQUES

  35. METHODOLOGIE DE CONCEPTION • Démarche Descendante (« TOP-DOWN ») et Itérative 4 Etapes : Définition Des Entités Statiques ETAPE 1 : Représentation des Liens multivalués entre Entités - Liens N : M (Associations) - Liens 1 : N (Descriptions) ETAPE 2 : Lien N : 1 (pas de création d ’Entité ; seul cas mais rajout de clé étrangère) ETAPE 3 : Rattachement des propriétés aux entités. Itération du processus si toutes les information ne sont pas représentées dans le schéma (reprise étape 1) ETAPE 4 :

  36. ETAPE 1 : ENTITES STATIQUES a - IDENTIFICATION des Entités statiques et de leurs clés primaires b - REPRESENTATION « relationnelle » de ces entités : Relation de Base sans Clé étrangère Ex : PILOTE (P PL#) AVION (A AV#) DEPARTEMENT (D DEP#) VOL (VOL#)

  37. ETAPE 2 : LIENS MULTIVALUES INTER ENTITES Identification et Représentation des Liens multivalués (N:M et 1:N) entre Entités 1 - ASSOCIATIONS Liens N : M N:M AVION Ex : PILOTE N:M DEPARTEMENT FOURNISSEUR Création d ’une relation de base avec des clés étrangères identifiant les entités liées Ex : VOL ( VOL#, V-PL#, V-AV# ) FOURN_PROD ( PROD#, FOUR# ) 2- DESCRIPTION Lien 1 : N 1:N VOL Ex : PILOTE Création d ’une relation de base ; rajout de la clé primaire de l ’entité de départ Comme clé étrangère dans l ’entité d ’arrivée ex : rajout de PL# dans VOL (VOL#, V-PL#)

  38. ETAPE 3 : LIENS MONOVALUES (N:1) INTER-ENTITES Lien N : 1 DETERMINATION N:1 PILOTE VOL Ex : N:1 DEPARTEMENT PILOTE Pas de création de nouvelle relation (seul cas). Rajout de la clé primaire de l ’entité déterminée comme clé étrangère dans l ’entité déterminante Ex : Rajout de DEP# dans PILOTE (P PL# , P-DEP#) RAJOUT DE PL# DANS VOL (VOL#, V-PL#) LIENS  PRESENCE DE CLES ETRANGERES +++

  39. CLASSIFICATION DES PROPRIETES • 3 types de PROPRIETES : IDENTIFICATION Clé Primaire Ex : Numéro-Vol dans l ’entité VOL REFERENCE Clé étrangère Ex : Numéro-Pilote dans l ’entité VOL CARACTERISTIQUE Ex : Ville-Départ, Ville-Arrivée dans VOL

  40. ETAPE 4 : PROPRIETES RATTACHEMENT DES PROPRIETES AUX ENTITES Une propriété peut-être - Monovaluée ou Multivaluée et - Immédiate (entité de rattachement. Connue) ou Non Immédiate (entité de rattachement inconnue) 4 CAS : Monovaluée/Immédiate Attribut de la relation concernée Ex : PLNOM, P-VILLE dans PILOTE Monovaluée/Non Immédiate Création d ’une nouvelle relation statique (cf.Normalisation 3NF) Ex : CAP dans AVION A_AV# A_TYPAV CAP N:1 N:1 Création d ’une entité statique CAPACITE ( C-TYPAV, CAP) A-TYPAV dans AVION devient Clé étrangère

  41. ETAPE 4 : PROPRIETES Multivaluée/Immédiate Création d ’une entité descriptive « toute clé » ou définition de plusieurs attributs (cf. Normalisation INF) Ex : Auteurs d ’un LIVRE LIVRE (LIV#, ………, AUT#1, AUT#2) ou LIV-AUTEUR (LIV#,AUT#) Multivaluée/Non Immédiate Création d ’une entité DESCRIPTIVE représentée par une relation de base avec la clé étrangère de l ’entité décrite. Ex : AGE des enfants d ’un PILOTE On crée l ’entité PILENFANT (E-PL#,PRENOM, AGE) FORMATION et DUREE de formation d ’un PILOTE On crée l ’entité PILFORM (F-PL#,F-TYPAV, FORMAT, DUREE) Note : pour chaque propriété il faut définir son domaine (typage sémantique)

  42. ETAPE 4 : TEST SI toutes les informations relatives à l ’univers à modéliser sont représentées dans le schéma ALORS passage à l ’approche analytique SINON nouvelle itération (reprise à l ’étape 1)

  43. EXEMPLE : AIRBASE PROPRIETES ENTITES REFRENCE clé étrangères IDENTIFICATION clé primaire CARACTERISTIQUES PILOTE P-PL# DEP# PLNOM, PL-VILLE AVION AV-AV# A-TYPAV, CAP AV-VILLE DEPARTEMENT D-DEP# DEPNOM VOL VOL# V-PL#, V-AV# VD-VILLE, VA-VILLE HD-HEURE, HA-HEURE PILENFANT ENF#, E-PL# E-EPL# PRENOM, AGE PILEFORM P-TYPAV, F-PL# DUREE, FORMAT F-PL#

  44. NOTE : IDENTIFICATION DU SCHEMA « QU ’y a-t-il en un nom ? Ce que nous nommons ROSE sous un tout autre nom sentirait aussi bon …. ? » W. Shakespeare (Roméo et Juliette)

  45. DEFINITION DES CLES PRIMAIRE R1 : Eviter si possible les clés primaire multi-attributs pour les raisons suivantes : - problèmes d ’utilisation : jointure multi-attribut - problème de définition (pour les relations statiques) si le concept de « domaine primaire » existe ; - problème de visualisation pour éviter les redondances logiques (ex : ETUDIANT (E #, C#, C-OFFERT, NOTE, …….)  Intérêt pour l ’administrateur d ’introduire des clés primaires mono-attributs surtout pour les relations statiques.

  46. DEFINITION DES DOMAINES R2 : Lorsque la comparaison des valeurs de deux attributs a un sens, définir un domaine commun pour ces attributs (union des valeurs possibles)  définition des domaines par l ’administrateur au fur et à mesure de la conception du schéma relationnel. * (choix crucial pour un contrôle sémantique des opérateurs) Note : toute clé étrangère doit avoir le même domaine que la clé primaire associée. R3 : Règle d ’identification des attributs et des domaines 2 cas : 1) s ’il n ’y a pas dans la même relation deux attributs définis sur le même domaine : Nom d ’attribut = nom de domaine 2) si plusieurs attributs de la même relation sont définis sur le même domaine : Nom d ’attribut = nom de domaine préfixé ou suffixé Note : ce programme d ’identification a un double intérêt : 1) avertir l’ utilisateur 2) permettre d ’introduire des domaines fictifs à SQL1 et SQL2 R4 : Noms d ’attribut … unique avec un langage relationnel fermé (ce n ’est pas le cas de SQL)

  47. SCHEMA RELATIONNEL AVEC NOTATION CODD & DATE DES ATTRIBUTS / DOMAINES EXEMPLE : AVION (AV#, AVNOM, CAP, LOC-VILLE) PILOTE (PL#, PLNOM, SAL, ADR-VILLE) VOL (VOL#, V-PL#, V-AV#, VD-VILLE, VA-VILLE, HD-HEURE, HA-HEURE)

  48. II L ’APPROCHE ANALYTIQUE de la méthode de Codd&Date I - PRINCIPE DU PROCESSUS DE NORMALISATION II - LA PREMIERE FORME NORMALE (1NF) III - LES FORMES NORMALES 2NF, 3NF, BCNF, 4NF, 5NF

  49. DEFINITION DU SCHEMA RELATIONNEL NORMALISE 2IEME PHASE • DOUBLE OBJECTIF : • Chaque relation possède une clé primaire qui représente l ’identifiant • d ’un certain type d ’entité ; • Chaque relation comprend plusieurs attributs MONOV ALUES qui représentent • des propriétés de l ’entité identifiée par la clé primaire (une relation contient • donc de l ’information sur un seul type d ’entité). • MISE EN 1ière FORME NORMALE EN SUPPRIMANT LES ATTRIBUTS • MULTIVALUES • ATTRIBUTS « MULTIVALUES » : • cardinalité inconnue : traitement comme entité descriptive (lien 1 : N) en • créant nouvelle relation : exemple attribut multivalué AUTEUR de l ’entité : • LIVRE (L#, TITRE, EDITEUR) • LIV-AUTEUR (L#,AUTEUR) • cardinalité connue : création nouvel attribut • exemple : capacité minimum et maximum d ’un avion • AVION (AV#, TYPE, CAP-MIN, CAP-MAX, LOC)

  50. ATTRIBUT MULTIVALUE AVEC CARDINALITE VARIABLE Considérons la relation LIVRE ayant les attributs AUTEUR et MOTCLE multivalués LIVRE L# ANNEE AUTEUR MOT-CLE TITRE EDITEUR 1 BD EN BD JESEPA 1988 GO HUMOUR MILO BD VULGARISATION LIV-AUTEUR LIVRE L# TITRE EDITEUR ANNEE L# AUTEUR 1 GO 1 MILO 1 BD EN BD JESEPA 1988 L# LIV-MOTCLE MOT-CLE 1 HUMOUR 1 BD 1 VULGARISATION « Simple mais naturel ! »

More Related