UE Informatique Conception et Exploitation de Bases de Données



Documents pareils
Cours Base de données relationnelles. M. Boughanem, IUP STRI

Conception des bases de données : Modèle Entité-Association

Modèle conceptuel : diagramme entité-association

Bases de Données. Plan

Nom de l application

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

Formation à l utilisation des Systèmes de Gestion de Bases de Données Relationnelles. organisée avec la collaboration du

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Conception d une base de données

Introduction aux Bases de Données

Modélisation des données

Merise. Introduction

Base de Données et Langage SQL

UE 8 Systèmes d information de gestion Le programme

Rappel sur les bases de données

II. Modèle conceptuel le modèle entité-association

Information utiles. webpage : Google+ : digiusto/

Schéma relationnel et contraintes d intégrité : le cas ConduiteAuto

Modèle Entité-Association. C est un modèle important pour la conception des bases de données relationnelles. Il

Structure fonctionnelle d un SGBD

Bases de données élémentaires Maude Manouvrier

MERISE. Modélisation de Systèmes d Information. Pierre Gérard. DUT Informatique 2ème année 2004/2005. IUT de Villetaneuse - Université de Paris 13

Dossier I Découverte de Base d Open Office

A QUOI SERVENT LES BASES DE DONNÉES?

Optimisations des SGBDR. Étude de cas : MySQL

BASES DE DONNÉES. CNAM Centre associé de Clermont-Ferrand Cycle A Année J. Darmont I. INTRODUCTION II. LES SYSTÈMES HIÉRARCHIQUES

Ecole des Hautes Etudes Commerciales HEC Alger. par Amina GACEM. Module Informatique 1ière Année Master Sciences Commerciales

Bases de données cours 1

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

Mise en œuvre des serveurs d application

Rémi GILANTE Certifié d Informatique et Gestion. Jean-Claude NOUSSIGUE Agrégé d Économie et Gestion, option B

Cours 1 : introduction

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

.../5. Gestion de Bases de Données (J. Wijsen) 27 janvier 2011 NOM + PRENOM : Orientation + Année : Cet examen contient 8 questions. Durée : 2 heures.

Bases de Données Relationnelles. Le Modèle Relationnel

Chaîne opératoire de réalisation d une base de données. ANF «Comment concevoir une base de données» (29-30/01/2015)

Guide d utilisation de la clé mémoire USB

Mercredi 15 Janvier 2014

Base de données relationnelle et requêtes SQL

Chapitre VIII. Les bases de données. Orientées Objet. Motivation

Introduction aux Bases de Données

Chapitre 1 Généralités sur les bases de données

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

Tickets 3:3. ChevauxPartants

Bases de Données Avancées

Cours Bases de données

Concevoir un modèle de données Gestion des clients et des visites

Bases de données Cours 1 : Généralités sur les bases de données

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Systèmes d information et bases de données (niveau 1)

I4 : Bases de Données

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

Bases de données relationnelles

Bases de Données. Stella MARC-ZWECKER. Maître de conférences Dpt. Informatique - UdS

CHAPITRE 1. Introduction aux bases de données

Chap. 2: L approche base de données

Créer le schéma relationnel d une base de données ACCESS

Les bases de données

A. Définition et formalisme

Modèle Entité/Association

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Bases de Données relationnelles et leurs systèmes de Gestion

INTRODUCTION : Données structurées et accès simplifié

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

CESI Bases de données

Module BD et sites WEB

Méthode d analyse Merise

Christian Soutou UML 2. pour les. bases de données. Avec 20 exercices corrigés. Groupe Eyrolles, 2007, ISBN :

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Présentation du module Base de données spatio-temporelles

GESTION D UNE BASE BIBLIOGRAPHIQUE

Introduction au Système de Gestion de Base de Données et aux Base de Données

Cours 6. Sécurisation d un SGBD. DBA - M1ASR - Université Evry 1

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

UML et les Bases de Données

DEVAKI NEXTOBJET PRESENTATION. Devaki Nextobjects est un projet sous license GNU/Public.

PG208, Projet n 3 : Serveur HTTP évolué

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

Langage SQL : créer et interroger une base

Comprendre Merise et la modélisation des données

BES WEBDEVELOPER ACTIVITÉ RÔLE

16H Cours / 18H TD / 20H TP

Sommaire. 1 Introduction Présentation du logiciel de commerce électronique 23

Visual Paradigm Contraintes inter-associations

Urbanisation de système d'information. PLM 6 (Product Lifecycle Management) Collaboration et partage d'informations

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

et les Systèmes Multidimensionnels

INFO 364 : Bases de Données Projet Professeur : Esteban Zimányi Assistants : Pierre Stadnik et Mohammed Minout Année Académique :

Chap. 3: Le modèle de données entité-association (E.A.)

La solution pour gérer vos connaissances techniques et scientifiques

UML (Diagramme de classes) Unified Modeling Language

OMGL6 Dossier de Spécifications

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

COURS de BASES de DONNEES

1. INTRODUCTION 2. IDENTIFICATION 2.1. DESCRIPTIF DE LA PLATE-FORME MATERIELLE.

Bases de données avancées Introduction

Annuaires LDAP et méta-annuaires

Transcription:

PeiP 1 ère année UE Informatique Conception et Exploitation de Bases de Données Session 2 : Généralités BD & MCD (Conception)

1. Retour sur MCD

3/28 Exemple d ambiguïté 1/4 Modéliser les informations suivantes : Le système informatique d une bibliothèque municipale, doit enregistrer les informations suivantes: Rechercher un Livre Càd recherches exprimées par les lecteurs pour identifier par exemple des livres pas encore disponibles mais populaires chez les usagers Emprunter un Livre Représentons ces informations avec un MCD

4/28 Exemple d ambiguïté 2/4 Modéliser les informations suivantes : Le système informatique d une bibliothèque municipale, doit enregistrer les informations suivantes: Rechercher un Livre Emprunter un Livre Approche «naïve» idusager Nom Prénom Age Usager rechercher ISBN Titre Auteur Livre emprunter

5/28 Exemple d ambiguïté 3/4 En fait, la notion de Livre est ambigüe, elle recouvre aussi bien les notions: D œuvres littéraires Le système informatique d une bibliothèque municipale, doit enregistrer les informations suivantes: Rechercher un Livre Emprunter un Livre D éditions de cette œuvre pouvant différer de format (poche, broché), d adaptation (Reader Digest 1, bande dessinée, ), d année de publication D exemplaire (un livre populaire pouvant exister en plusieurs exemplaires ex. Bibliothèque Universitaire) La phrase Rechercher un Livre est également ambigüe, ce qui est cherché peut n être que le titre 1 Reader Digest propose/ait des éditions «résumées» de livre.

6/28 Exemple d ambiguïté 4/4 Une solution pourrait alors être la suivante: idusager Nom Prénom Age Usager rechercher idoeuvre Titre Oeuvre Ecrit par 1,n 1,n idauteur Auteur Auteur emprunter Exister en 1,1 Exemplaire IdExemplaire DateAchat Etat posseder 1,1 Edition ISBN DatePublication Quelle est la «bonne solution»? Editer 1,1 1,n Editeur idauteur NomEditeur => Cela dépend! (des informations utiles pour le cas d étude ex. si 1 seul exemplaire par livre dans la bibliothèque )

2. Rôle d un Modèle Logique de Donnée

8/28 Pourquoi un SGBD? Contre Exemple d une application gérant des données SANS SGBD Pourquoi gérer des données : Pour ne pas perdre les données à la fermeture du programme Parce que c est l objectif du logiciel (ex. Gestion Catalogue, Comptabilité ) Exemple d architecture logicielle d une application gérant ses propres données sans passer par un SGBD. IHM Module 1 Module 2 Module n Fonct Acces Données Application Logicielle Fichier texte ou binaire Ex en C : fwrite/fprintf dans un flux (chaine ou structure)

9/28 Pourquoi un SGBD? Sans SGBD? Avantages : Rapide à développer Inconvénients: On doit tout développer (accès fichiers, fonctions de recherche ) Format de fichier «propriétaire» (surtout si le fichier est en binaire) Mono Utilisateur Vérification des données insérées limitée Réutilisation limitée

10/28 Intérêt d un SGBD Séparation des rôles : le SGBD est un «spécialiste» des données, il ne fait que ça et donc peut optimiser au mieux la gestion des données. L application logicielle «utilisatrice» des données, ne se préoccupe que de les utiliser (pas de les gérer) Accès multi-utilisateurs : chacun doit pouvoir avoir ses propres besoin de données (lesquelles, de quelle manière les afficher, ) => Implique accés réseau. Rque: beaucoup d applications téléphones fonctionne sur ce principe (BD locale synchronisées avec BD Centrale)

11/28 Architecture d un SGBD Gere l interface utilisateur (SQL) Vues Gere les tables réelles Optimise les requêtes Google Earth Gestion physique des fichiers : création, suppression, Indexes et hachages Disques Données (Fichiers) Adapté de http://georges.gardarin.free.fr/livre%20dm_fichiers/1-rappelsbd.ppt

3. Modélisation des données : traduction MCD -> MLD

13/28 MCD et MLD Le MCD a permis d identifier les informations importantes et utiles. Il les a organisées. Le MLD traduit ces considérations en vue de les intégrer dans le SGBD. Nous considérons dans ce cours un langage relationnel (la plupart des SGBD sont relationnels) Il s agit : D affiner pour chaque élément d information son type de données (numérique, chaine, ) => équivalent du type de données d une variable en programmation D ajouter des informations d identification des informations et des liens entre elles (clefs primaires, clefs étrangères) Pour optimiser leur stockage et traitement qui sera poursuivi au niveau physique par le SGBD.

14/28 Modèle relationnel Langage de modélisation «textuel» des informations en vue de leur traduction en tables. Principe: Paradigme relationnel: Tout est Relation. Les relations sont caractérisées par des attributs Notations Nom_relation ( attribut 1, attribut 2... attribut n ) Attribut 1 est une clef primaire (contient un identifiant) Attribut 2 est un attribut simple attribut,n est un attribut qui doit contenir un valeur correspondant à celle d une clef primaire d une autre table.

15/28 Traduction d un MCD en MLD Rappel l objectif est d arriver à produire quelque chose comme ça : Entité Livre Forme relationnelle: Livre ( ISBN, NomAuteur, PrenomAuteur, Titre) Qui permettra de mémoriser des informations comme suivant ISBN NomAuteur PrénomAuteur Titre Table Livre 209178527X NEY Henry Automatique et informatique industrielle 2851102869 FAURE Jacques Almanach Vermot 2010 2070628035 ABOUET Marguerite Aya de Yopougon, Tome 5 Processus traduction relativement simple : Entités => Tables Relations => Importation clefs étrangères & propriétés OU Table Propriétés => Propriétés avec type de données => règles de traduction différentes selon les multiplicités

Relation binaire 1.. N 16/28 Illustration Personne Télephone Nom Adresse posseder 0,1 Chien idtatouage Nom Téléphone MCD Comment savoir : Si un chien à un propriétaire? Qui est son propriétaire? Le numéro de téléphone rend possible l identification de son propriétaire Personne Télephone Nom Adresse Chien idtatouage Nom TelephonePropriétaire MLD

Relation binaire 1.. N 17/28 Principe de traduction C est-à-dire une relation (x.. 1) -> (x.. n) Ce type de relation traduit une dépendance fonctionnelle. Se traduit au passage du MLD par la création d une clé étrangère sur la Table dépendante. par la création d une clé étrangère sur la Table dépendante. Si x vaut 0 (donc participation pas obligatoire) cela signifie que l attribut portant cette clé étrangère peut ne pas être renseigné (null autorisé au niveau implémentation).

Entité Livre MCD Relation binaire 1.. N Etudiant IdEtudiant Nom Prenom Date de naissance Adresse Salaire Duree 0,1 Entité Entreprise faire un stage 18/28 Exemple Entreprise IdEntreprise Nom CA annuel Adresse NomContact Telephone Table Livre MLD ETUDIANT PK_ETUDIANT IDETUDIANT IDENTREPRISE NOM PRENOM DATE_DE_NAISSANCE ADRESSE SALAIRE DUREE Table Entreprise faire un stage ENTREPRISE PK_ENTREPRISE IDENTREPRISE NOM CA_ANNUEL ADRESSE NOMCONTACT TELEPHONE

Relation binaire N.. N 19/28 Principe de traduction C est-à-dire une relation (x.. n) -> (x.. n) Cas précédent inapplicable car sinon plusieurs valeurs dans la clef etrangères => Collier un peu gros Solution : Utilise une 3ème table qui associera les occurrences participant à la relation (MCD)

20/28 Relation binaire N.. N Exemple Etudiant Entreprise IdEtudiant Nom Prenom Date de naissance Adresse travailler durée salaire statut IdEntreprise Nom CA annuel Adresse NomContact Telephone ETUDIANT PK_ETUDIANT IDETUDIANT NOM PRENOM DATE_DE_NAISSANCE ADRESSE TRAVAILLER PK_TRAVAILLER IDETUDIANT IDENTREPRISE DURÉE SALAIRE STATUT ENTREPRISE PK_ENTREPRISE IDENTREPRISE NOM CA_ANNUEL ADRESSE NOMCONTACT TELEPHONE Traduction réalisée avec WinDesign

Relation ternaire 21/28 Même principe que binaire n..n. Consultant IdConsultant Nom Prenom Date de naissance Adresse NiveauFormation Travailler Salaire Mission idmission NiveauRequis Description Entreprise IdEntreprise Nom CA annuel Adresse NomContact Telephone Principe de traduction CONSULTANT PK_CONSULTANT IDCONSULTANT NOM PRENOM DATE_DE_NAISSANCE ADRESSE NIVEAUFORMATION ENTREPRISE PK_ENTREPRISE IDENTREPRISE NOM CA_ANNUEL ADRESSE NOMCONTACT TELEPHONE TRAVAILLER PK_TRAVAILLER IDCONSULTANT IDMISSION IDENTREPRISE SALAIRE MISSION PK_MISSION IDMISSION NIVEAUREQUIS DESCRIPTION

22/28 Relation réflexive Etudiant IdEtudiant Nom Prenom Date de naissance Adresse parrain parainer filleul ETUDIANT PK_ETUDIANT IDETUDIANT NOM PRENOM DATE_DE_NAISSANCE IDETUDIANT = ETUDIANT_PARAINNEADRESSE ETUDIANT_PARAINNE 2 Solutions IDETUDIANT = IDETUDIANT_PARRAIN ETUDIANT PK_ETUDIANT IDETUDIANT NOM PRENOM DATE_DE_NAISSANCE ADRESSE PARAINER PK_PARAINER IDETUDIANT_PARRAIN IDETUDIANT_FILLEUL Traduction réalisée avec WinDesign IDETUDIANT = IDETUDIANT_FILLEUL

Autre exemple de traduction MCD -> MLD 23/28

Autre exemple de traduction MCD -> MLD 24/28

4. Bonus

Catalogue site de commerce en ligne : ex: téléphone portable 26/28

27/28 Catalogue site de commerce en ligne : identification informations Informations brutes : Marque Modèle Constructeur Hauteur, Largeur Epaisseur Poids Taille affichage Capacité mémoire Coloris disponibles Informations qualifiant des «objets» ie Des groupes d objets Caractéristiques => propriétés Caractéristiques partagées Propriétés? Entités? Réponse : «ça dépends»

Catalogue site de commerce en ligne : MCD 28/28 Modele idmodele Nom Modèle Hauteur Largeur Epaisseur Poids Taille Ecran posseder Marque idmarque NomMarque 1,1 1,n 1,1 1,n Produire Constructeur idconstructeur NomConstructeur DateCréationEtp 1,n 1,n disposer CapaciteMemoire idcapacite Valeur Unité Couleur décliner idauteur NomEditeur