Aperçu sur la modélisation et la conception des bases de données relationnelles par l'exemple COMPIL 2010 pascal.dayre@(irit.fr|enseeiht.fr) 1 Plan ● Cas d'étude ● Base de données relationnelle ● Modèles ● Le modèle logique ● L'approche intuitive ● L'approche systématique ● Le modèle relationnel ● conclusion COMPIL 2010 pascal.dayre@(irit.fr|enseeiht.fr) 2 Cas d'étude « Nous voulons construire un centre de données d'un observatoire géophysique constitué de n stations, chacune d'elle étant équipée d'un certain nombre d'instruments de mesure. Ces instruments sont caractérisés par leur réponse instrumentale qui évolue suite aux interventions de maintenance. Les mesures correspondent à des séries temporelles de valeurs numériques suivant une fréquence d'échantillonnage. » COMPIL 2010 pascal.dayre@(irit.fr|enseeiht.fr) 3 Cas d'étude Station de mesure 1 (3 instruments) Centre de données Station de mesure 2 (3 instruments) COMPIL 2010 pascal.dayre@(irit.fr|enseeiht.fr) 4 Base de données relationnelle ● Base = ensemble de tables ● Table = ensemble d'attributs + une clé ● La table, une relation idStation Nom Pays longitude Latitude ... 1 Villefranche France ... 2 Tarbe 3 Toulouse Clé Enregistrement ... Attribut = nom d'une données élémentaires Attribut Les clés étrangères pour les relations inter-tables ● id I n s t r u m e Nn to m idStation Nom Pays longitude Latitude ... 1 Villefranche France ... 1 2 Tarbe 3 Toulouse P a y s lo n g i t u Ld a t i tu dI de S ta t i o n e 1 m a gétniq u e F r a n c e.. . 2 n u céal ir e 1 3 s i s m oèt mr e 1 COMPIL 2010 . .. pascal.dayre@(irit.fr|enseeiht.fr) ... 5 Modèles Monde Etude Définitions et usages 1. représentation Modèles 2. référence 1.Représentation Organisation de la connaissance du monde. Représentation de notre point de vue du monde. 2. Référence Base de données 3. un prototype, concret ou conceptuel, qui servira de « modèle » à une construction réelle 3. prototype COMPIL 2010 Applications pascal.dayre@(irit.fr|enseeiht.fr) 6 Modèles ● Modèle logique Modèle logique ● Entité, Association, cardinalité, attribut ● Modèle Entité - Association ● Modèle Conceptuel de Données (MCD) (merise) Modèle relationnel ● Modèle relationnel ● Tables, Clés primaires, secondaires, étrangères, index ● Entity-Relationship Model (ER) ● Enhanced Entity-Relationship Model (EER) (spécialisation, contraintes, union - workbench) Modèle physique COMPIL 2010 ● Modèle physique ● Instructions SQL (create) ● Implémentation dans un moteur relationnel pascal.dayre@(irit.fr|enseeiht.fr) 7 Deux approches pour le modèle logique ● L'approche intuitive ou informelle ● ● ● du haut vers le bas (du conceptuel vers les données) empirique L'approche systématique ou formelle ● ● du bas vers de haut (des données vers le conceptuel) Méthodologie par les règles d'intégrité COMPIL 2010 pascal.dayre@(irit.fr|enseeiht.fr) 8 Le Modèle Conceptuel: les entités Station Instrument Réponse Intervention Mesure COMPIL 2010 Série temporelle pascal.dayre@(irit.fr|enseeiht.fr) 9 Le Modèle Conceptuel: les associations Station équipe Instrument caractérise maintient Réponse est mesurée par Intervention Mesure COMPIL 2010 Fait partie de pascal.dayre@(irit.fr|enseeiht.fr) Série temporelle 10 Le Modèle Conceptuel: les cardinalités 0,n 1,1 équipe Station Instrument 0,n 0,n 0,n caractérise maintient 1,1 Réponse est mesurée par 1,1 Intervention 1,1 Mesure COMPIL 2010 1,1 Fait partie de pascal.dayre@(irit.fr|enseeiht.fr) Série temporelle 11 Le Modèle Conceptuel: les attributs n°station 0,n nom 1,1 équipe Station nom Instrument 0,n 0,n localisation localisation 0,n caractérise maintient 1,1 n°intervention date fréquence 1,1 Réponse n°réponse est mesurée par gain Intervention n°instrument unité label 1,1 Mesure date COMPIL 2010 1,1 Série temporelle Fait partie de mesure n°série pascal.dayre@(irit.fr|enseeiht.fr) début fin 12 Deux approches pour le modèle logique ● L'approche intuitive ou informelle ● ● ● du haut vers le bas (du conceptuel vers les données) empirique L'approche systématique ou formelle ● ● du bas vers de haut (des données vers le conceptuel) Méthodologie par les règles d'intégrité COMPIL 2010 pascal.dayre@(irit.fr|enseeiht.fr) 13 L'approche systématique ● ● ● La méthodologie par les règles d'intégrité fonctionnelle (CIF Contraintes Int. Fonc.) Construction du dictionnaire des données élémentaires Recherche des dépendances fonctionnelles via une matrice (construction, simplification, DFs composées) ● MCD ● puis traduction en MRD selon les cardinalités COMPIL 2010 pascal.dayre@(irit.fr|enseeiht.fr) 14 Les données élémentaires « Nous voulons construire un centre de données d'un observatoire géophysique constitué de n stations, chacune d'elle étant équipée d'un certain nombre d'instruments de mesure. Ces instruments sont caractérisés par leur réponse instrumentale qui évolue suite aux interventions de maintenance. Les mesures correspondent à des séries temporelles de valeurs numériques suivant une fréquence d'échantillonnage. » Les données élémentaires extraites: ● N° Station, nom station, localisation station ● N° instrument, nom instrument, localisation instrument ● N° réponse instrumentale, n° intervention, date intervention, label ● Mesure, date mesure, n° série temporelle, début série, fin série ● Fréquence, gain, unité, début réponse, fin réponse COMPIL 2010 pascal.dayre@(irit.fr|enseeiht.fr) 15 Matrice des dépendances fonctionnelles n ° s t a t i o n n° station nom station local. Station n° instrument nom instrum. local. Instr. n° réponse n° intervention date intervention label intervention mesure date mesure n° série début série fin série fréquence gain unité début réponse fin réponse COMPIL 2010 n o m s t a t i o n l o c a l . S t a t i o n n ° i n s t r u m e n t n o m i n s t r u m . l o c a l . I n s t r . n ° n ° r é p o n s e i n t e r v e n t i o n I I d a t e i n t e r . l a b e l m e s u r e i n t e r . d a t e m e s u r e n ° s é r i e d é b u t f i n I I I I I I I I I I I f r é q u e n c e g a i n Pour chaque donnée en colonne, on pose la question – Pour une valeur de cette donnée, existe-t-il une seule valeur de la donnée située en ligne? • Si la réponse est OUI, on inscrit 1 dans l ’intersection • Si la réponse est NON, on n’inscrit rien I I I I I I I I I I I I pascal.dayre@(irit.fr|enseeiht.fr) 16 Simplification 1 n° station nom station local. Station n° instrument nom instrum. local. Instr. n° réponse n° intervention date intervention label intervention mesure date mesure n° série début série fin série fréquence gain unité début réponse fin réponse COMPIL 2010 n ° n ° n ° n ° s t a t i o n i n s t r u m e n t r é p o n s e i n t e r v e n t i o n I I m e s u r e n ° s é r i e Suppression des colonnes vides car aucune DF I I I I I I I I I I I I I I I I I I I I I I I pascal.dayre@(irit.fr|enseeiht.fr) 17 Simplification 2 n° station nom station local. Station n° instrument nom instrum. local. Instr. n° réponse n° intervention date intervention label intervention mesure date mesure n° série début série fin série fréquence gain unité début réponse fin réponse COMPIL 2010 n ° n ° n ° n ° s t a t i o n i n s t r u m e n t r é p o n s e i n t e r v e n t i o n I I m e s u r e n ° s é r i e Exemples: I I I I Elimination des DF transitives: I I I I I I I DF (N° série -> n° station) éliminée Car DF(n° série -> n°instrument) Et DF(n° instrument -> n° station) DF (N° série -> n° instrument) éliminée Car DF(n° série -> n° reponse) Et DF(n° reponse -> n° instrument) I I I I I I I I I I I I pascal.dayre@(irit.fr|enseeiht.fr) 18 Simplification 2 n° station nom station local. Station n° instrument nom instrum. local. Instr. n° réponse n° intervention date intervention label intervention mesure date mesure n° série début série fin série fréquence gain unité début réponse fin réponse COMPIL 2010 n ° n ° n ° n ° s t a t i o n i n s t r u m e n t r é p o n s e i n t e r v e n t i o n I m e s u r e n ° s é r i e Exemples: DF (N° série -> n° station) éliminée Car DF(n° série -> n°instrument) Et DF(n° instrument -> n° station) I I I Elimination des DF transitives: I I I I I I DF (N° série -> n° instrument) éliminée Car DF(n° série -> n° reponse) Et DF(n° reponse -> n° instrument) I I I I I I I I I pascal.dayre@(irit.fr|enseeiht.fr) 19 Le Modèle Conceptuel Résultant ... ... n°instrument Nom Localisation n°station Nom Localisation ... n°intervention Date Label ... n°réponse Fréquence Gain Unité Début Fin Chaque colonne donne une entité ... ... Mesure Date COMPIL 2010 n°série Début Fin pascal.dayre@(irit.fr|enseeiht.fr) 20 Le Modèle Conceptuel Résultant Instrument Station n°instrument Nom Localisation n°station Nom Localisation Intervention n°intervention Date Label Réponse n°réponse Fréquence Gain Unit Début Fin Chaque entité est nommée Mesure Série temporelle Mesure Date COMPIL 2010 n°série Début Fin pascal.dayre@(irit.fr|enseeiht.fr) 21 Le Modèle Conceptuel Résultant Station n°station Nom Localisation Instrument équipe n°instrument Nom Localisation caractérise Intervention n°intervention Date Label maintient Réponse Création des associations à partir des dépendances fonctionnelles. Recherche de DF composée éventuelle (alternative n x n avec Intervention x Instrument) Mesure Mesure Valeur COMPIL 2010 Fait partie de pascal.dayre@(irit.fr|enseeiht.fr) n°réponse Fréquence Gain Unité Début Fin est mesurée selon Série temporelle n°série Début Fin 22 Le Modèle Conceptuel Résultant Station n°station Nom Localisation 0,n 1,1 équipe 0,n Instrument n°instrument Nom Localisation 0,n caractérise Intervention n°intervention Date Label 1,1 maintient Réponse 1,1 n°reponse Fréquence Gain Unité Début Fin 0,n est mesurée selon Mesure Mesure Valeur COMPIL 2010 1,1 1,1 Fait partie de pascal.dayre@(irit.fr|enseeiht.fr) 0,n Série temporelle n°série Début Fin 23 Comparatif des 2 méthodes COMPIL 2010 pascal.dayre@(irit.fr|enseeiht.fr) 24 Transformation en modèle relationnel ● ● ● ● ● Le Modèle Conceptuel des Données (MCD) permet de représenter visuellement les relations entre les données Le Modèle Relationnel des Données (MRD) permet d'implémenter la base de données Transformation MCD -> MRD: ● Entité -> table ● Association -> clé étrangère (cardinalité 1 x n), table (cardinalité n x n) Normalisation du modèle relationnel (à la recherche des CIFs) -> réduire les redondances en se basant sur les DFs (mises en jour, volume, requêtes) ● FN1: Tout attribut contient une valeur atomique ● FN2: tout attribut n'appartenant pas à une clé ne dépend pas d'une partie d'une clé ● FN3: tout attribut n'appartenant pas à une clé ne dépend pas d'un autre attribut non clé ● FN Boyce-Codd: une clé entière détermine un attribut Le modèle physique est une altération du modèle relationnel normalisé pour respecter des contraintes de performance par exemple. COMPIL 2010 pascal.dayre@(irit.fr|enseeiht.fr) 25 Le modèle relationnel Station n°station Nom Localisation 0,n 1,1 équipe 0,n Instrument n°instrument Nom Localisation 0,n caractérise Intervention n°intervention Date Label 1,1 maintient Réponse 1,1 n°reponse Fréquence Gain Unité Début Fin 0,n est mesurée selon Mesure Mesure Valeur COMPIL 2010 1,1 1,1 Fait partie de pascal.dayre@(irit.fr|enseeiht.fr) 0,n Série temporelle n°série Début Fin 26 Le modèle relationnel Instrument n°instrument Nom Localisation n°station Station n°station Nom Localisation Intervention n°intervention Date Label n°instrument Réponse n°réponse Fréquence Gain Unit Début Fin n°instrument Mesure Série temporelle Mesure Date n°série COMPIL 2010 n°série Début Fin n°réponse pascal.dayre@(irit.fr|enseeiht.fr) 27 Le modèle relationnel (alternative nxn) Station n°station Nom Localisation 0,n 1,1 équipe 0,n Instrument n°instrument Nom Localisation 0,n caractérise Intervention n°intervention Date Label 0,n maintient Réponse 1,1 n°reponse Fréquence Gain Unité Début Fin 0,n est mesurée selon Mesure Mesure Valeur COMPIL 2010 1,1 1,1 Fait partie de pascal.dayre@(irit.fr|enseeiht.fr) 0,n Série temporelle n°série Début Fin 28 Le modèle relationnel (alternative nxn) Instrument n°instrument Nom Localisation n°station Station n°station Nom Localisation Intervention n°intervention Date Label n°instrument Intervention-instrument n°intervention n°instrument n°réponse Fréquence Gain Unit Début Fin n°instrument Mesure Série temporelle Mesure Date n°série COMPIL 2010 Réponse n°série Début Fin n°réponse pascal.dayre@(irit.fr|enseeiht.fr) 29 conclusion ● ● ● ● ● ● ● Etude d'un cas concret La revue des modèles, PB de la représentation des connaissances (différence Merise, workbench) Le comparatif d'une méthode empirique et d'une méthodologie par les Contraintes d'Intégrité Fonctionnelles (CIF) La méthodologie CIF peut paraître plus fastidieuse mais on respecte a priori les Formes Normales Implication sur les applications, les requêtes, l'exploitation des données du traditionnel fort utile aujourd'hui de nouvelles approches: modélisation objet, bds sémantiques, semi-structurées... COMPIL 2010 pascal.dayre@(irit.fr|enseeiht.fr) 30