SGBDR Modélisation Construction Interrogation

Slides:



Advertisements
Présentations similaires
Modèle Conceptuel des données
Advertisements

Modèle Logique ET PHYSIQUE des données
Informatique appliquée à la gestion Bases de données www. labri
Material/Sources: Daniel Bardou, Julie Dugdale &
Base de Données / MCD Introduction en utilisant un SGBD simple (Access) Quinio Université Paris Ouest2010 Quinio.
Un modèle conceptuel Le modèle Entité-Association Frédéric Gava (MCF)
Introduction Pour concrétiser l’enseignement assisté par ordinateur
Modèle Entités-Associations
UML - Présentation.
Le modèle logique des données relationnel MLD
Le Modèle Logique de Données
La base de données : le modèle relationnel.
Bases de Données Plan du cours : Année : 2009/10 A - Généralités :
Initiation au système d’information et aux bases de données
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Initiation au système d’information et aux bases de données
Rappel sur les bases de données et le vocabulaire
Initiation à la conception de systèmes d'information
Initiation à la conception des systèmes d'informations
Modélisation E/R des Données
Geti2101 : Systèmes d’Information et Informatique
Introduction à la conception de Bases de Données Relationnelles
Les bases de données Cours assuré par: Mlle Smii imen
Chap 4 Les bases de données et le modèle relationnel
Initiation aux bases de données
Conception des données
L’utilisation des bases de données
Modèle Logique de Données
SYSTEMES D’INFORMATION
MODELE RELATIONNEL concept mathématique de relation
Staf 2x Cours de bases de données
Les concepts et les méthodes des bases de données
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
Initiation à la conception des systèmes d'informations
Introduction.
Base de Données.
Bases de données.
DOSSIER G10 – La base de données Relationnelle
Bases de données : modèlisation et SGBD
Merise – MCD.
Cours n°1 Introduction, Conception
SYSTEMES d’INFORMATION séance 1 : Introduction et définitions
1 Initiation aux bases de données et à la programmation événementielle Responsable : Souheib BAARIR. (le sujet de votre .
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
Système Gestion Bases Données
Plan du cours Introduction Conception des SI Modèles Merise
Initiation aux SGBD Frédéric Gava (MCF)
Introduction avec Access Quinio Nanterre 2008
1 Structure en MC Principes Stockage des données dans la mémoire volatile d’un ordinateur Problèmes Stockage temporaire «Petits» volumes de données Langages.
Notion de Dépendance Fonctionnelle (DF)
ANALYSE LE MCD 1ère approche
ANALYSE LE MCD 1ère approche
Séance /10/2004 SGBD - Approches & Principes.
INTRODUCTION AUX BASES DE DONNEES
INTRODUCTION AUX BASES DE DONNEES Modèle entités-relations
Initiation aux bases de données et à la programmation événementielle
INTRODUCTION AUX BASES DE DONNEES Dépendances et normalisation
INTRODUCTION AUX BASES DE DONNEES Base et métabase
Introduction Module 1.
Le modèle logique des données relationnel
N° chamb + n° Reservation
Bases de données – Cours 2
ACCESS SGBDR Relations Objets. Gestion de Fichiers        données MS applications Independance enregistrement Programme: manipule une.
LP1 ACCESS SGBDR Relation Objets. Caractéristiques des SGBDR Organisation SI système de pilotage Institutions Clients Concurrence Fournisseurs système.
LP1 Outils Base de données Modélisation Relation Objets.
Les bases de données Séance 3 Construction du Modèle Conceptuel de Données.
Les bases de données Séance 4 Construction du Modèle Physique (la BDD)
Schéma de base de données Présentation. Conception du schéma logique  Transformation du schéma conceptuel en structures de données supportées par les.
UML Unified Modeling Language. UML : 8 diagrammes 1.Classes 2.Activités 3.Séquences 4.Collaboration 5.Etats transition 6.Cas d’utilisation 7.Composants.
Transcription de la présentation:

SGBDR Modélisation Construction Interrogation Bonjour, Je vais vous exposer les résultats de nos travaux, portant sur la couverture comparée de thésaurus, spécialisés en biologie moléculaire, Travail fait en collaboration avec Gwenaëlle Marquet, Anita burgun, et pierre lebeux, au laboratoire d’informatique médicale, de l faculté de rennes, en France. Mary Vincent Laboratoire d’Informatique Médicale Faculté de Médecine Rennes, France http://www.med.univ-rennes1.fr

Historique 1960 Uniquement des systèmes de gestion de fichiers plus ou moins sophistiqués. 1970 Début des systèmes de gestion de bases de données réseaux et hiérarchiques proches des systèmes de gestion de fichiers. Pb : on ne pouvait pas interroger une base sans savoir où était l'information recherchée (on "naviguait") Pas d’écriture de programmes possibles Papiers sur le fondement de la théorie des BdDR 1980 Débuts des SGBDR 1990 Domination des SGBDR Début des systèmes de gestion de bases de données orientés objet. http://www.med.univ-rennes1.fr

BdD hiérarchique Cellule Chromosome Gène Patron Chef Chef Sous-chef Voici un exemple de base de données hiérarchique. Comme son nom l ’indique elle est très adaptée pour représenter une hiérarchie. Mais elle peut permettre aussi de représenter une nomenclature. Et en fait, elle correspond assez bien à de nombreuses situations. C ’est le premier type de BDD à être apparu. Il en existe encore beaucoup de ce type aujourd’hui et qui fonctionnent sans problème. http://www.med.univ-rennes1.fr

BdD réseau Patron Patron Chef Chef Sous-chef Sous-chef Sous-chef La base de donnée hiérarchique ne permet pas de tout représenter. En particulier les enfants qui ont plusieurs pères. La base de données réseau est plus souple. http://www.med.univ-rennes1.fr

Genome Chromosome Gene BdD relationnelle CodeGene NomGene …. CodeGenome NomGénome …. CodeChromosome NumChromosome …. CodeChromosome CodeGénome La base de données relationnelle est apparu plus tard et a eu un succès lié au fait qu ’elle peut être installée sur des micro. Chaque entité est représenté par une table. Les tables sont liées entre elles par des relations. Le SGBD gère ces relations. On déclare au SGBD une relation en donnant une équivalence entre deux champs. Les tables peuvent être déplacées facilement…; SQL: Algèbre relationnelle qui repose sur la théorie des ensembles : union, intersection, Select NomGene From Table Gene Where CodeChromosome = HUM-10 http://www.med.univ-rennes1.fr

BdD objet Séquence ARNt ARNm SnARN Personne Chef Patron Sous-chef Transcris épissé Taille Séquence ARNt Nom : Fonction : ARNm Niveau d’expression condition SnARN Localisation Moléculaire Personne Adresse Salaire Lieu de travail Chef Scooter de fonction Ref patron Patron Primes de responsabilité Voiture de fonction Sous-chef Vélo de fonction Ref chef Les bases de données objet = nouvelle conception Avant on raisonnait données d’un côté, traitements de l ’autre Objet ce sont des caractéristiques (propriété, attribut) et des action qu ’on peut faire sur ces objets Notion d ’héritage de polymorphisme et d ’encapsulation http://www.med.univ-rennes1.fr

Une BdD est un ensemble d'informations qui est : SGBD Définition et exemple Clefs Contraintes Normalisation Attentes Une BdD est un ensemble d'informations qui est : exhaustif, non redondant, structuré, persistant. Un SGBD est un logiciel qui permet de : décrire, modifier, interroger, administrer. http://www.med.univ-rennes1.fr

SGBD http://www.med.univ-rennes1.fr Définition et exemple Clefs Contraintes Normalisation Attentes http://www.med.univ-rennes1.fr

Nom de la relation Attributs Clefs SGBD http://www.med.univ-rennes1.fr Définition et exemple Clefs Contraintes Normalisation Attentes Nom de la relation Attributs Clefs http://www.med.univ-rennes1.fr

Clef(s) secondaire(s) Clef(s) étrangère(s) SGBD Définition et exemple Clefs Contraintes Normalisation Attentes Clef primaire Clef(s) secondaire(s) Clef(s) étrangère(s) http://www.med.univ-rennes1.fr

Permet d’identifier de manière unique un tuple dans une table SGBD Définition et exemple Clefs primaires Contraintes Normalisation Attentes Permet d’identifier de manière unique un tuple dans une table Exemple : Clef formée d’un attribut : CLIENT (num_client, nom, prénom, adresse) Clef formée de plusieurs attributs PRODUIT (type, code, libelle, couleur) http://www.med.univ-rennes1.fr

Autres clefs primaires possibles Exemple : SGBD Définition et exemple Clefs secondaires Contraintes Normalisation Attentes Autres clefs primaires possibles Exemple : CLIENT (num_client, code_INSEE, nom, prénom, adresse) Clef primaire Clef secondaire http://www.med.univ-rennes1.fr

Clefs qui référencent des clefs primaires d’autres tables Exemple : SGBD Définition et exemple Clefs étrangères Contraintes Normalisation Attentes Clefs qui référencent des clefs primaires d’autres tables Exemple : CLIENT (num_client, nom, prénom, adresse) PRODUIT (num_produit, libelle, couleur) ACHAT (num_achat, #num_client, #num_produit, quantité) Clef primaire Clefs étrangères http://www.med.univ-rennes1.fr

CLIENT (num_client, nom, prénom, adresse) SGBD Définition et exemple Clefs étrangères Contraintes Normalisation Attentes CLIENT (num_client, nom, prénom, adresse) PRODUIT (num_produit, libelle, couleur) ACHAT (num_achat, #num_client, #num_produit, quantité) Num_client Nom Prénom Adresse 35 Dupont Pierre Bruz 42 Martin Paul Rennes Num_produit Libelle Couleur 4 Table Bleu 7 Chaise Rouge Num_achat Num_client Num_produit quantité 1 35 4 6 2 33 7 8 3 42 http://www.med.univ-rennes1.fr

Clients rennais ayant acheté des produits bleus SGBD Définition et exemple Clefs étrangères Contraintes Normalisation Attentes Num_client Nom Prénom Adresse 35 Dupont Pierre Bruz 42 Martin Paul Rennes Num_produit Libelle Couleur 4 Table Bleu 7 Chaise Rouge Num_achat Num_client Num_produit quantité 1 35 4 6 2 33 7 8 3 42 Clients rennais ayant acheté des produits bleus http://www.med.univ-rennes1.fr

Propriétés qui doivent toujours être vérifiées dans la base Exemple: SGBD Définition et exemple Clefs Contraintes d’intégrité Normalisation Attentes Propriétés qui doivent toujours être vérifiées dans la base Exemple: Prix d’un produit toujours positif Age compris entre 0 et 130 ans Numéro de téléphone à 10 chiffres … http://www.med.univ-rennes1.fr

Dépendances fonctionnelles Les formes normales SGBD Définition et exemple Clefs Contraintes d’intégrité Normalisation d’une BDR Attentes But et principe Ensemble de règles à appliquer Conformité des tables et relations avec le modèle relationnel utilisé par le moteur Écriture simplifiée des requêtes Assurer l’intégrité des données Utilisation a priori optimale de ressources Possibilité de Dénormaliser Dépendances fonctionnelles Les formes normales http://www.med.univ-rennes1.fr

A détermine plusieurs B SGBD Définition et exemple Clefs Contraintes d’intégrité Normalisation d’une BDR Attentes Dépendance fonctionnelle simple Dépendance fonctionnelle de plusieurs valeurs A - > B A détermine B A < - - > B A détermine plusieurs B Si on connaît votre numéro de salarié dans l’entreprise on peut trouver votre nom. Si on connaît le nom d’un professeur on peut déterminer la liste de ses étudiants. http://www.med.univ-rennes1.fr

Première forme normale SGBD Définition et exemple Clefs Contraintes d’intégrité Normalisation d’une BDR Attentes Première forme normale Les champs doivent être atomiques Il ne peut y avoir de champs répétitifs Les champs ont une signification constante et précise dans le temps Exemple : CLIENT (num_client, nom, prénom, lieu_date_naissance) Pas de pertes d’informations Requêtes facilitées Num_client Nom Prénom Lieu_date_naissance 35 Dupont Pierre Bruz_22/04/1975 42 Martin Paul Rennes_15/05/1979 Num_client Nom Prénom Lieu_naissance Date_naissance 35 Dupont Pierre Bruz 22/04/1975 42 Martin Paul Rennes 15/05/1979 http://www.med.univ-rennes1.fr

Première forme normale SGBD Définition et exemple Clefs Contraintes d’intégrité Normalisation d’une BDR Attentes Première forme normale Les champs doivent être atomiques Il ne peut y avoir de champs répétitifs Les champs ont une signification constante et précise dans le temps Exemple : Animal Date Quantité Poule10 03/01/2005 2 Poule9 02/01/2005 1 Vache7 7 Poule Date Quantité Poule10 03/01/2005 2 Poule9 02/01/2005 1 Vache Date Quantité Vache7 03/01/2005 7 http://www.med.univ-rennes1.fr

Deuxième forme normale SGBD Définition et exemple Clefs Contraintes d’intégrité Normalisation d’une BDR Attentes Deuxième forme normale Être en première forme normale Les propriétés non clefs sont totalement dépendantes fonctionnellement de la totalité de la clé primaire Tout attribut n’appartenant par à la clef ne dépend par que d’une partie de la clef Num_salarie Nom Num_projet Heures 20036 Durand 1 22 2 10 36950 Leroux 5 45002 Franck 3 9 7 Num_salarie Num_projet Heures 20036 1 22 2 10 36950 5 45002 3 9 7 Num_salarie Date 20036 Durand 36950 Leroux 45002 Franck http://www.med.univ-rennes1.fr

Troisième forme normale SGBD Définition et exemple Clefs Contraintes d’intégrité Normalisation d’une BDR Attentes Troisième forme normale Être en deuxième forme normale Tout attribut n’appartenant pas à une clef ne dépend pas que d’un attribut non clé Si une valeur d’un champ non clé peut être déduite d’un autre champ non clé, alors la table n’est pas dans une 3ème forme normale Num_salarié Nom Num_Service Nom_service Num_chef 35 Dupont 5 Informatique 4580 42 Martin 6 vente 4120 Num_client Nom Num_service 35 Dupont 5 42 Martin 6 Num_service Num_chef Nom_service 5 4580 informatique 6 4120 vente Anomalie de suppression Anomalie d’insertion : nouveau service http://www.med.univ-rennes1.fr

La normalisation n’est pas une finalité, mais un outil SGBD Définition et exemple Clefs Contraintes d’intégrité Normalisation d’une BDR Attentes La normalisation n’est pas une finalité, mais un outil On ne peut dénormaliser que si on a préalablement normaliser justification http://www.med.univ-rennes1.fr

Indépendance physique Indépendance logique SGBD Définition et exemple Clefs Contraintes Normalisation Attentes Indépendance physique Indépendance logique Efficacité des accès aux données Administration centralisée des données Non redondance des données Cohérence des données Partageabilité des données Sécurité des données Résistance aux pannes http://www.med.univ-rennes1.fr

Conception de BdDR Preuve… Cependant … La conception d’une base de données n’est pas un domaine réservé aux informaticiens ! Preuve… Les logiciels de type SGBDR sont intégrés aux suites bureautiques les plus connues. Ex: ACCESS du pack Office. Cependant … La maîtrise d’un SGBDR est loin d ’être aussi facile à acquérir que celle d ’un logiciel de traitement de texte par ex. http://www.med.univ-rennes1.fr

Modélisation http://www.med.univ-rennes1.fr Introduction Définition Construction UML et Merise http://www.med.univ-rennes1.fr

Modèle entité association Modélisation Introduction Définition Construction UML et Merise Modèle entité association Proposé par Chen (USA) en 1976 Tardieu en France, 1975 Intégré à Merise en 1979 Repris par le diagramme de classe d’UML Pour faire un MCD : utilisation des diagrammes de classes Uniquement (pas d’autres diagrammes : cas, séquence…) http://www.med.univ-rennes1.fr

Les différentes composantes : Modélisation Introduction Définition Construction UML et Merise Les différentes composantes : Attributs Classes Méthodes Associations Cardinalités http://www.med.univ-rennes1.fr

Modélisation : pas forcement lié au monde réel Introduction Définition : Classe Construction UML et Merise Description abstraite d’un objet de même structure et de même comportement ~ Acteur Modélisation : pas forcement lié au monde réel ELEVE MATIERE SALLE http://www.med.univ-rennes1.fr

Sert à caractériser les classes et les associations Exemple : Modélisation Introduction Définition : Attribut Construction UML et Merise Données élémentaires Sert à caractériser les classes et les associations Exemple : ELEVE MATIERE SALLE ID_eleve Nom Prenom Adresse Année naissance ID_matiere Nom Coefficient Année ID_salle Nombre_place Batiment http://www.med.univ-rennes1.fr

Un ou plusieurs attributs Modélisation Introduction Définition : Clefs Construction UML et Merise Un ou plusieurs attributs Décrit un et un seul tuple de la classe (enregistrement) ELEVE MATIERE SALLE ID_eleve Nom Prénom Adresse Année naissance ID_matiere Nom Coefficient Année ID_salle Nombre_place bâtiment http://www.med.univ-rennes1.fr

Association = relation Lie deux classes Modélisation Introduction Définition : Association Construction UML et Merise Association = relation Lie deux classes ELEVE MATIERE SUIT ID_eleve Nom Prénom Adresse Année naissance ID_matiere Nom Coefficient Année MATIERE EST DISPENSEE EN SALLE ID_matiere Nom Coefficient Année ID_salle Nombre_place bâtiment http://www.med.univ-rennes1.fr

Dimension : nombre de pattes de l’association Modélisation Introduction Définition : Association Construction UML et Merise ELEVE MATIERE SUIT ID_eleve Nom Prénom Adresse Année naissance ID_matiere Nom Coefficient Année Dimension : nombre de pattes de l’association Collection : liste des classes qui participent à l’association Exemple de « suit » est de dimension 2 sa collection est {ELEVES, MATIERE} http://www.med.univ-rennes1.fr

PERSONNE VILLES Numéro Nom adresse ID_ville Nom Département Naissance Modélisation Introduction Définition : Association de dimension 3 Construction UML et Merise PERSONNE VILLES Numéro Nom adresse ID_ville Nom Département Naissance DATE JJMMAAAA événement http://www.med.univ-rennes1.fr

Modélisation Introduction Définition Construction : Cardinalités UML et Merise La cardinalité indique le nombre d’occurrences minimum et maximum qui peuvent intervenir dans une association. Si la valeur de la cardinalité minimum est : 0 : certaines occurrences de l’entité peuvent ne pas participer à l'association, 1 : toutes les occurrences de l’entité participent à l'association. Si la valeur de la cardinalité maximale est : 1 : toutes les occurrences de l’entités participent au plus une fois à l'association, * : certaines occurrences de l’entité peuvent participer plusieurs fois à l'association Salle MATIÈRE Numéro salle 1..* 1..1 Nom matière Nombre places Coefficient Année matière http://www.med.univ-rennes1.fr

Modélisation 1..* 1..1 1..* 0..* 1..* 0..* 1..* 0..* 1..* 1..* Introduction Définition Construction : Cardinalités UML et Merise ENSEIGNANT 1..* SALLE Numéro enseignant 1..1 Nom enseignant Numéro salle EST RESPONSABLE DE Nombre places 1..* EST DIPENSÉE 0..* 1..* ENSEIGNE MATIÈRE 0..* Nom matière PRÉ_REQUIE Coefficient 1..* Année matière 0..* 1..* SUIT Note 1..* ÉLÈVE Numéro élève Nom élève Adresse élève Année naissance http://www.med.univ-rennes1.fr

Modélisation http://www.med.univ-rennes1.fr Introduction Définition Construction : Cardinalités UML et Merise http://www.med.univ-rennes1.fr

Modèle conceptuel de données Modélisation Introduction Définition Construction : Cardinalités UML et Merise UML MERISE Diagramme de classes Modèle conceptuel de données Classe Entité Association (Relation) Multiplicité Cardinalité Objet Occurrence http://www.med.univ-rennes1.fr

Traduction du diagramme de classe en BDR 5 règles : De l’UML vers les BDR Les associations 1.1 Les associations 1.* Les associations *.* Les associations 0..1,* Traduction du diagramme de classe en BDR 5 règles : Règle 1 : Les classes deviennent des tables, les attributs les colonnes Règles 2.3.4.5 : On gère les 3 types d’association. 1.1 si les deux cardinalités sont 0..1 ou 1..1 1.* si une des deux cardinalités est 0..n ou 1..n *.* si les deux cardinalités sont 0..n ou 1..n http://www.med.univ-rennes1.fr

Livre Etat_livre Référence_li Num_etat_livre Couverture Pages De l’UML vers les BDR Règles 2 : Les associations 1.1 Les associations 1.* Les associations *.* Les associations 0..1,* A B 1 Table A (Clé_A Clé Primaire, Autres attributs de A, @Clé_B Référence B) Table B (Clé_B Clé Primaire, Autres attributs de B,@Clé_A Référence A) Livre Etat_livre Référence_li 1 Num_etat_livre Couverture Pages Pourcent_usure 1 LIVRE(Référence_li, @Num_etat_livre) ETAT_LIVRE(Num_etat_livre, @Référence_li, Couverture, Pages, Pourcent_usure) http://www.med.univ-rennes1.fr

OEUVRE(Num_oeuvre,Titre, ISBN) Oeuvre De l’UML vers les BDR Règle 2 : Les associations 1.1 Règle 3 : Les associations 1.* Les associations *.* Les associations 0..1,* A B 1 * Table A (Clé_A Clé Primaire, Autres attributs de A) Table B (Clé_B Clé Primaire, Clé_A Référence A, Autres attributs de B) Livre Référence_li 1..* 1 LIVRE(Référence_li, @Num_etat_livre, @Num_oeuvre) OEUVRE(Num_oeuvre,Titre, ISBN) Oeuvre Num_oeuvre Titre ISBN http://www.med.univ-rennes1.fr

Table A (Clé_A Clé Primaire, Autres attributs de A) De l’UML vers les BDR Règle 2 : Les associations 1.1 Règle 3 : Les associations 1.* Rège 4 : Les associations *.* Les associations 0..1,* A B * * * * Table A (Clé_A Clé Primaire, Autres attributs de A) Table B (Clé_B Clé Primaire, Autres attributs de B) Table C (Clé_A Référence A, Clé_B Référence B, Clé primaire(Clé_A, Clé_B)) http://www.med.univ-rennes1.fr

Oeuvre Mot_clé Titre Nom_mot ISBN OEUVRE(Num_oeuvre,Titre, ISBN) De l’UML vers les BDR Règle 2 : Les associations 1.1 Règle 3 : Les associations 1.* Rège 4 : Les associations *.* Les associations 0..1,* Oeuvre Mot_clé 0..* Titre ISBN Nom_mot 0..5 OEUVRE(Num_oeuvre,Titre, ISBN) MOT_CLE(Ident_mot, Nom_mot) Table de jointure : REL_ŒUVRE_MOT_CLE(@ Num_oeuvre, @ Ident_mot) http://www.med.univ-rennes1.fr

De l’UML vers les BDR http://www.med.univ-rennes1.fr Règle 2 : Les associations 1.1 Règle 3 : Les associations 1.* Règle 4 : Les associations *.* Règles 5 : Les associations ternaires http://www.med.univ-rennes1.fr

De l’UML vers les BDR http://www.med.univ-rennes1.fr Règle 2 : Les associations 1.1 Règle 3 : Les associations 1.* Règle 4 : Les associations *.* Règles 5 : Les associations ternaires http://www.med.univ-rennes1.fr