Notions sur la modélisation et la création d une base de données. D. Puthier 1 1 ERM206/Technologies Avancées pour le Génome et la Clinique, http://tagc.univ-mrs.fr/staff/puthier, puthier@tagc.univ-mrs.fr ESIL, 2009
Préambules
Définition Préambule L analyse des données: étape essentielle dans la conception d applications liées à un SGBDR Le modèle entité-association: technique d analyse permettant de construire un schéma de bases de données relationnelles. La méthode Merise a été proposée par Hubert Tardieu dans les années 1970. Méthode d analyse, de conception et de réalisation de systèmes d information informatisés. Approche utilisée dans le développement de base de données relationnelles. Son utilisation permet d économiser du temps de conception (on code après reflexion...).
Les entités Les associations Cardinalités des associations Clef d une entité Le Modèle Conceptuel des Données (MCD) Il met en jeu des d entités et des associations (entity/relationship en anglais). L entité: un objet d intérêt dans le problème qu on cherche à modéliser (ex: client, facture, gene, protéine, expérience,...). C est un regroupement d informations. Chaque entité comporte des attributs (ou propriétés) c est à dire des caractéristiques (date de naissance, couleur, nom, capitale, population, superficie,...). Il peut exister 0 à n occurrences d une entité (ex: plusieurs occurences de l entité villes)
Les entités Les associations Cardinalités des associations Clef d une entité Typages des attributs Les attributs peuvent avoir des types permettant de mieux les décrires: D An BL T DT N S I Date Caractères de longueur n Booléen Temps Date Temps Nombre Smallint (entier court) Integer entier
Les associations Préambule Les entités Les associations Cardinalités des associations Clef d une entité Elles permettent de définir des relations sémantiques entre entités.
Cardinalités des associations Les entités Les associations Cardinalités des associations Clef d une entité La cardinalité indique le nombre minimum (0 ou 1) et maximum (1 ou n) de fois où l occurrence d une entité peut participer à une association Le schéma suivant indique que: une être humain réside dans 1..1 appartement un appartement est occupé par 0..n être(s) humain(s). un être humain possède 0..n appartement(s).
Clef d une entité Préambule Les entités Les associations Cardinalités des associations Clef d une entité Une clef est utilisée pour discriminer sans ambiguité les occurences (exemple: le numéro de commande, le numéro de client,...). Cette clef devra répondre au critère d unicité, de concision (préférer le numérique), et de stabilité (l identifiant ne doit pas changer tous les jours...). Dans certain cas, le choix est naturel Immatriculation pour une automobile, Code postal pour une ville, numéro de sécurité sociale pour un patient,... Dans d autre cas il faudra Utiliser une combinaison d attributs pour définir une clef composée (ex Date de naissance-nom-prénom). Utilisé une clef artificielle spécifique à la BD (Ex: un numéro client). De manière générale il faut mieux préférer un clef numérique artificielle à une clef naturelle composée.
Clef d une entité Préambule Les entités Les associations Cardinalités des associations Clef d une entité De manière générale, on préfèrera les clefs numériques aux clefs aphabétiques et aphanumériques car celles-ci occupent moins d espace et sont plus rapides à trier.
Le MCD visait à conceptualiser l application. Le MLD vise à traduire le MCD en tables utilisables par un SGBD. L intérêt de la méthode Merise est de proposer des règles simples pour faciliter la transformation MCD -> MLD. Le MPD (Modèle physique de données) est un autre raffinement qui vise à produire un MLD pour un SGBD spécifique.
Les règles. Préambule 1 A chaque entité correspond une table. 2 Si la relation est de type 1:1, les entités ont la même clef. 3 Dans le cas d une relation 1:n, la clef de l entité côté 0,n/1,n migre vers la table côté 0,1/1,1 et devient une clef étrangère (Foreign Key). 4 Dans le cas d une association n:m entre une table A et une table B, une nouvelle table C est créée. Dans C, les clefs primaires de A et B sont des clefs étrangères. 5 Une liste plus exhaustive des règles est disponible à l adresse suivante: http://www.sam-mag.com/p53,53,5,43,default.aspx
Exemple: MCD
Exemple: le MPD correspondant.
. Modéliser une base de données de microarrays. 1 Il existe plusieurs plate-formes (i.e; types) de microarrays. 2 Chaque plate-forme contient des sondes. 3 les sondes d une plate-forme permettent de mesurer l abondance d un gène. 4 Dans une expérience on hybride des échantillons biologiques sur une plate-forme unique. 5 l hybridation d un échantillon dans une expérience produit des valeurs d expression pour une sonde. 6 Un échantillon n est hybridé qu une seule fois. 7 Chaque gène est identifié par un entrezid un genesymbol et un taxid. 8 Un davidid est un identifiant dans la base de donnée DAVID. 9 Chaque davidid correspond à un entrezid. 10 Chaque davidid est associé à des annotations issues d ontologies.
Les entités
Le MCD
Le MPD
Réalisez le schéma final (incluant le typage des attributs) avec DBDesigner.
Le schéma avec DBdesigner (sans les associations).
Le schéma avec DBdesigner (avec les associations et les indexations).