programme n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Programme PowerPoint Presentation
Download Presentation
Programme

Loading in 2 Seconds...

play fullscreen
1 / 84

Programme - PowerPoint PPT Presentation


  • 76 Views
  • Uploaded on

Programme. Introduction aux BD et aux SGBD Le modèle relationnel Le langage de requête SQL La conception d’une BD relationnelle Protection des informations Perspectives des BD. Comment concevoir une base de données ?. Dictionnaire de données. liste des rubriques + renseignements associés

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Programme' - terena


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
programme
Programme
  • Introduction aux BD et aux SGBD
  • Le modèle relationnel
  • Le langage de requête SQL
  • La conception d’une BD relationnelle
  • Protection des informations
  • Perspectives des BD
dictionnaire de donn es
Dictionnaire de données
  • liste des rubriques + renseignements associés
    • des indications comme la nature et le type,
    • l’entité ou l’association de rattachement,
    • les contrôles,
    • la date de création et l’auteur,
    • les autorisations de mise à jour,
    • le nombre d’occurrences de valeurs,
    • des exemples de valeurs,
    • le contexte d’utilisation,
    • ....
dictionnaire de donn es 2
Dictionnaire de données (2)
  • code
  • libellé
  • nature :
    • rubriques non calculées (NC) : par exemple le nom d’un client
    • les paramètres (P) : par exemple le taux de TVA
    • les rubriques calculées (C) : par exemple le montant T.T.C. sur une facture
    • les rubriques calculées incrémentées (CI) : par exemple le numéro d’une facture
  • commentaires
epuration du dictionnaire de donn es
Epuration du dictionnaire de données
  • Rubrique ayant plusieurs significations => remplacée par plusieurs
    • Date peut être remplacée par date_commande, date_livraison;
  • Elimination des synonymes
    • numéro client et code_client : idem;
  • Rubriques décomposées en sous rubriques => décomposition
    • Par exemple, une adresse peut être décomposée en un numéro de rue, un nom de rue, un code postal et une ville. La notion d’adresse disparaît alors
  • Outils d’aide à la constitution d’un DD : AGL
pr sentation du dictionnaire de donn es
Présentation du dictionnaire de données
  • Un dictionnaire de données se présente sous forme tabulaire:
th orie de la normalisation
Théorie de la normalisation
  • organisations :
    • Bains(nn, nom, prénom, qualité, date, durée, np, nomp, type région, pollution)et
    • Nageur(nn, nom, prénom, qualité)Plage(np, nomp, type, région, pollution)Baignade(nn, np, date, durée)
slide8
But
  • Mauvaise conception
    • Redondance des données
    • Incohérence en modification
    • Anomalie d’insertion
    • Anomalie de suppression
d pendance fonctionnelle df
Dépendance fonctionnelle (DF)
  • Modélisation
    • contraintes sur les données
    • réalité
    • limites à la base
  • Définition
    • Un attribut B dépend fonctionnellement de A si, étant donné une valeur de A, il lui correspond une unique valeur de B (quel que soit l’instant t)
    • A détermine B
  • Notation A  B
d pendance fonctionnelle 2
Dépendance fonctionnelle (2)
  • L ’attribut A peut être composé de plusieurs attributs.
    • immatriculation, date  no_propriétaire
  • DF : propriété définie sur tous les tuples, vérifiée en permanence
  • DF non symétrique en général
    • nom  nn n’est pas vérifiée.
      • Deux nageurs différents peuvent posséder le même nom (Dupont, Martin)
exemples
nn  nom ?

nn  prénom ?

nom, prénom  qualité ?

nn  qualité ?

np  nomp ?

np  région ?

np  pollution ?

np  type ?

Région  np ?

nom, région  np ?

Exemples
axiomes d armstrong
Axiomes d’Armstrong
  • Réflexivité
    • Y  X  X  Y
  • Augmentation
    • X  Y  XZ  YZ
  • Transitivité
    • X  Y et Y  Z  X  Z
propri t s d duites
Propriétés déduites
  • Union
    • X  Y et X  Z  X  YZ
  • Pseudo-transitivité
    • X  Y et YW  Z  XW  Z
  • Décomposition
    • X  Y et Z  Y  X  Z
d pendance fonctionnelle l mentaire
Dépendance fonctionnelle élémentaire
  • DF + Axiomes => toutes les DF
  • DF élémentaire : DF non déductibles
  • Une dépendance fonctionnelle X  A est dite élémentaire si
    • A n’est pas inclus dans X
    • il n’existe pas X’ inclus dans X tel que X’ A
  • famille génératrice = couverture minimale
  • Exemple :
    • nomp, région  pollution
    • nomp  pollution ou région  pollution faux
graphe de d pendances fonctionnelles
Graphe de dépendances fonctionnelles
  • noeuds = attributs
  • arcs = DF
fermeture transitive
Fermeture transitive
  • FT = DF + DF obtenues par transitivité
  • Notée F+
  • Nouvelles DF :
    • nomp, région  type
    • nomp, région  pollution.
couverture minimale
Couverture minimale
  • Définition
    • sous ensemble minimum de dépendances fonctionnelles élémentaires permettant de générer toutes les autres
  • Exemple
    • (nn  nom, nn  prénom, nn  qualité, np  nomp, np  région, nomp, région  pollution, nomp, région  type, nomp, région  np)
  • Théorème
    • Tout ensemble de dépendances fonctionnelles admet une couverture minimale, en général non unique
cl d une relation
Clé d’une relation
  • Définition
    • ensemble minimum d’attributs permettant de déterminer tous les autres
  • Soit R(A1, A2, ..., An) un schéma de relation. Soit F+ l’ensemble des dépendances fonctionnelles associées à R. Soit X un sous-ensemble d’attributs de R. X est une clé de R ssi :
    • X  A1, A2, ..., An
    • il n’existe pas de sous-ensemble Y de X tel que Y  A1, A2, ..., An
cl d une relation 2
Clé d’une relation (2)
  • Exemple
    • nn est une clé de la relation nageur
  • Remarques
    • Plusieurs clés peuvent être candidates pour une même relation
    • Dans l’écriture du schéma, la clé est soulignée
d composition d une relation 2
Décomposition d’une relation (2)
  • Décomposition sans perte
  • Décomposition préservant les DF
  • Décomposition d’un schéma de relation
    • La décomposition d’un schéma de relation R(A1, A2, ..., An) est sa substitution par un ensemble de schéma de relations R1, R2, ..., Rp telles que :
      • schéma(R)  schéma(R1)  schéma(R2)  ... schéma(Rp)
d composition sans perte
Décomposition sans perte
  • La décomposition d’un schéma de relation R(A1, A2, ..., An) par un ensemble de schéma de relations R1, R2, ..., Rp est sans perte ssi :
    • R  R1>< R2 ><...>< Rp
  • Une décomposition d’une relation en deux relations est sans perte si l’attribut de jointure est clé d’une des deux relations
d composition pr servant les df
Décomposition préservant les DF
  • La décomposition d’un schéma de relation R(A1, A2, ..., An) par un ensemble de schéma de relations R1, R2, ..., Rp préserve les dépendances fonctionnelles si la fermeture transitive de R est la même que l’union des fermetures transitives de chacune des relations
formes normales
Formes normales
  • Première forme normale
  • Deuxième forme normale
  • Troisième forme normale
1 re forme normale
1ère forme normale
  • Définition
    • Une relation est en première forme normale si tous ses attributs sont atomiques.
  • Un attribut atomique n’est pas :
    • multivalué (liste de valeurs)
    • composé (structuré en sous-attributs)
  • Pour toute relation en première forme normale, un attribut représente une donnée élémentaire du monde réel
exemple
Exemple
  • Bains(nn, np, date, durées)
    • «durées» : liste des durées de baignade - attribut multivalué
    • Cette relation n’est donc pas en première forme normale
  • Solutions :
    • nombre de baignades limité par jour
      • Bains(nn, np, date, durée1, durée2, durée3)
    • nombre illimité
      • Bains(nn, np, date, durée)
      • autant de tuples qu’il y a de baignade
deuxi me forme normale
Deuxième forme normale
  • Définition
    • Une relation est en deuxième forme normale ssi:
      • elle est en première forme normale
      • tout attribut non clé dépend de la totalité de la clé

R(A,B,C,D)

interdit

ok

deuxi me forme normale 2
Deuxième forme normale (2)
  • Exemple
    • Plage(nomp, région, type, pollution) est-elle en deuxième forme normale ?
  • Remarque
    • Toute relation contenant une clé non composée est automatiquement en deuxième forme normale si elle est en première forme normale
troisi me forme normale
Troisième forme normale
  • Objectif : élimination des redondances dues aux dépendances fonctionnelles déduites par transitivité
  • Définition
    • Une relation est en troisième forme normale ssi:
      • Elle est en deuxième forme normale
      • Si tout attribut non clé dépend directement de la clé, il n’existe donc aucune dépendance avec un attribut non clé

R(A,B,C,D,E)

interdit

ok

propri t s
Propriétés
  • Toute relation R admet au moins une décomposition en troisième forme normale telle que :
    • elle préserve les dépendances fonctionnelles
    • elle est sans perte
  • Exemple
    • plage(np, région, type, pollution)
    • Hypothèse : région  type => plage n’est pas en troisième forme normale
    • Transformation
      • plage(np, région, pollution)
      • région (région, type)
algorithme de d composition en troisi me forme normale
Algorithme de décomposition en troisième forme normale
  • Pré : connaissance du contenu de la relation universelle + DF
  • Principe de l’algorithme :
    • A partir du graphe G des DF, calculer une couverture minimale C
    • Editer l’ensemble des attributs isolés dans une même relation (tous sont clés)
    • Recherche le plus grand ensemble X d’attributs qui détermine d’autres attributs
    • Editer la relation R(X, A1, ..., An)
    • Supprimer les DF X  A1, .., X An du graphe de couverture minimale C
    • Supprimer les attributs isolés de C
    • Reprendre l’opération à partir de l’étape 3 jusqu’à ce que C soit vide
conclusions
Conclusions
  • Importance de la normalisation des relations
  • Autres formes normales
mod le entit association
Modèle entité-association
  • Concepts et définitions
    • Entité
    • Type d’entité
    • Domaine
    • Attribut
    • Clé
    • Association
    • Type d’association
entit
Entité
  • Entité = objet (concret ou abstrait)
  • Existe en tant que tel, sans être soumis à l’existence d’une autre entité
  • Exemples :
    • Produit X
    • Module d’enseignement de mathématiques
    • Lion
type d entit
Type d’entité
  • Regroupement des entités en fonction de leurs caractéristiques communes => Type d’entité
  • Exemple :
    • Regrouper éléphant, tortue et zèbre en un type d’entité : « animal »
    • Informations en commun (par leur structure) : poids, taille, alimentation, ....
domaine
Domaine
  • Ensemble de valeur
  • A partir de type communs :
    • entier, chaîne de caractères, ...
  • Plus finement :
    • par extension en listant les valeurs possibles
    • en définissant des plages de valeurs
  • Exemples :
    • âge : entier
    • âge : entier compris entre 0 et 130
    • situation familiale : ensemble de valeurs (‘célibataire’, ‘marié’, ‘veuf’, ‘divorcé’)
attribut
Attribut
  • Attribut : propriété d’un type d’entité
  • Pour chaque entité d’un type d’entité une valeur est associée à cet attribut
  • Exemple :
    • Type d’entité animal, Entité éléphant :
      • Taille = 2,30 m
      • Poids = 1000 kg
      • Alimentation = 'végétarien'
slide39
Clé
  • Attribut (ou groupe d’attributs) particulier d’un type d’entité
  • Différencie toutes les entités d’un même type d’entité
  • Exemple :
    • Numéro d’étudiant
    • Plaque d’immatriculation
association
Association
  • Association d’entités : regroupement d’entités
  • Traduit plutôt une action entre les entités
  • Exemple :
    • Alimenter :association entre un le lion Clarence et le gardien John
    • Se baigner: association entre le nageur Gaël et la plage de Binic
type d association
Type d ’association
  • Regroupement des associations en type d’association
  • Peuvent posséder des attributs
  • Attribut d’un type d’association: propriété dépendant de tous les types d’entités intervenant dans l’association
  • Exemple: la date de prise en charge d’un animal par un gardien dépend de

gardien

+

animal

repr sentation graphique1
Représentation graphique
  • Attention : une association ne possède pas de clé!!!!
exemples1
Exemples
  • Un enseignant est responsable d’un module ....
exemples 2
Exemples (2)
  • Une personne peut être le parent (père ou mère) d’une autre ...
exemples 3
Exemples (3)
  • A vous de jouer : le type d’association "inscrit" défini entre les types d’entités "étudiant" et "module" a pour attribut le numéro d’ordre d’inscription pour ce module (l’étudiant s’inscrit pour la 1ère, la 2ème fois à ce module, ..)
remarques
Remarques
  • On ne crée jamais de type d’entité pour représenter un ensemble d’entité réduit à un seul élément
  • Un attribut n’apparaît qu’à une seule place s’il n’y a pas de polysèmes (mots ayant plusieurs sens). Pas de duplication de l’information!
  • Toutes les rubriques du DD ne deviennent pas attributs du modèle. Attribut : rubrique non paramètre, non calculée
diff rentes configurations d associations
Différentes configurations d’associations
  • Associations binaires
  • Associations n-aires
associations binaires de type 1 1
Associations binaires de type 1:1
  • À une entité E peut correspondre par l’association A au plus une entité de F
  • À une entité F peut correspondre par l’association A au plus une entité de E
associations binaires de type 1 n
Associations binaires de type 1: n
  • À une entité E peut correspondre par l’association A plusieurs entités de F
  • À une entité F peut correspondre par l’association A au plus une entité de E
associations binaires de type n m
Associations binaires de type n:m
  • À une entité E peut correspondre par l’association A plusieurs entités de F
  • À une entité F peut correspondre par l’association A plusieurs entités de E
association n aires
Association n-aires
  • Plus de deux entités
  • Par exemple, type d’association ternaires.
  • Case d’emploi du temps déterminée que si l’on a
    • l’horaire
    • le jour
    • la matière
    • la classe
    • Type d’association quaternaire
cardinalit s d un couple entit association
Cardinalités d’un couple entité-association
  • La cardinalité d’un couple entité-association E, A est un couple de nombre m, n où :
    • m définit le nombre minimum d’association de type A pouvant exister pour une entité E
    • n définit le nombre maximum d’association de type A pouvant exister pour une entité E
valeurs caract ristiques
Valeurs caractéristiques
  • Valeurs caractéristiques du minimum :
    • 0
    • 1
    • Entier plus grand que 1
  • Valeurs caractéristiques du maximum:
    • 1
    • n
    • Entier plus grand que 1
sp cialisation g n ralisation d entit s
Spécialisation/généralisation d’entités
  • Spécialisation d’un type d’entité
    • Définir des sous-types d’entités
    • Affiner la représentation des données
  • Généralisation
    • Créer un sur-type d’entité
    • Mettre en facteur les attributs communs à plusieurs types d’entités
exemple4
Exemple

Personne

Femme Homme Effectuer Service

intervention de la th orie de la normalisation
Intervention de la théorie de la normalisation
  • Types d’entités
  • Cardinalités
  • Attributs des types d’association
type d entit1
Type d’entité
  • Clé d’un type d’entité E : ensemble d’attributs qui détermine fonctionnellement tous les autres attributs de ce type d’entité
  • Un type d'entité doit vérifier les trois formes normales
cardinalit s
Cardinalités
  • Association ?,1
    • Si la cardinalité du couple (E, A) où E est un type d’entité et A est un type d’association est (?,1) => une occurrence de E participe au plus à une association de A
    • Cette occurrence détermine donc les autres entités participant à cette association
    • Toute clé de E détermine fonctionnellement les clés des autres types d’entité participants
attributs de type d association
Attributs de type d’association
  • Si T est un attribut d’un type d’association A => T dépend fonctionnellement de l’ensemble des clés de chacun des types d’entité participants
  • Exemple:
    • date_affect du type d’association ‘ diriger ’ défini entre les deux types d’entités ‘ Enseignant ’ et ‘ département ’: num_ens, num_dept  date_affect
  • => aucun type d’association ne peut posséder de clé
construction du sch ma entit association
Construction du schéma entité-association
  • Méthode descendante
  • Méthode ascendante
m thode descendante
Méthode descendante
  • Point de départ : univers du discours
  • Etapes:

1- DD + règles de gestion

2- Recensement des entités et des associations (intuitif)

3- Placement des attributs au sein des types d’entités et d’association

4- Calcul des cardinalités (DF)

m thode descendante 2
Méthode descendante (2)

5-Vérification :

  • Respects des règles du formalisme E/A
    • Absence de répétition d’attribut
    • Une clé par type d’entité
    • Vérifier les DF
    • Vérifier les cardinalités /règles de gestion
m thode descendante 3
Méthode descendante (3)

Vérification :(suite)

  • Normalisation :
    • Vérifier la 3 FN pour tous les types d’entité
    • Vérifier les types d’association n-aire : décomposition en plusieurs types d’association de degré plus faible
    • Supprimer les types d’associations qui se déduisent par transitivité d’autres types d’associations

6-Validation :

  • Par l’utilisateur
  • Par l’analyse des traitements
m thode ascendante
Méthode ascendante
  • Point de départ : sorties
  • Méthode de Flory
  • Etapes :

1- Recensement des rubriques (existantes ou souhaitées) => DD

2- Rechercher les DF (matrice carrée)

3- Couverture minimale

4- Elimination des circuits

m thode ascendante 2
Méthode ascendante (2)

5- Construction du schéma :

  • Recherche des clés primaires :
    • S : ensemble des attributs correspondant à des sommets du graphe des dépendances fonctionnelles G
    • B : ensemble des attributs étant le but d’au moins une dépendance fonctionnelle et origine d’au moins une dépendance fonctionnelle
    • Chaque attribut de S ou de B est une clé primaire d’un des types d’entité du modèle entité-association
m thode ascendante 3

a

b

a

?,1 1,?

b

Méthode ascendante (3)

Construction du schéma : (suite)

  • Recherche des types d’entité :
    • Chaque attribut de S et de B devient clé d ’un type d’entité E
    • Si s est dans S, les attributs déterminés par s n’étant ni dans S ni dans B sont attributs de E;
  • Recherche des types d’associations :
    • Deux clés définies liées par un arc dans G induisent une association de type 1,n
    • La cardinalité (?,1) est rattachée à l’entité dont la clé est source de la dépendance fonctionnelle
m thode ascendante 4
Méthode ascendante (4)

Construction du schéma : (suite)

  • Recherche des types d’associations :
    • un arc de G provenant de plusieurs sommets (n sommets) vers un attributs non clé se traduit par un type d’association n-aire A de type n:m associant les types d’entités correspondant aux sommets
m thode ascendante 5
Méthode ascendante (5)

Construction du schéma : (suite)

  • Recherche des types d’associations :
    • un arc G provenant de plusieurs sommets (p sommets) et allant vers un attribut clé constitue un type d’association (p+1)-aire;
    • Ajouter les associations sans attribut (non déductibles des DF)

6- Validation

remarques1
Remarques
  • Peu de types d’association ternaire ou plus
  • Abus de langage
    • Entité à la place de type d’entité
    • Association à la place de type d’association
    • Entité = objet ; Entité = occurrence d’entité
    • Type d’entité = concept abstrait détaché de la réalité
  • Modèle entité-association = modèle entité-relation
  • Représentation graphique variable
  • Rédiger des hypothèses!
r gle 1
Règle 1
  • Type d'entité -> relation
  • Attribut atomique -> constituant (attribut)
  • Attributs composites -> n constituants
  • Attribut(s) clé(s) -> clé candidate
  • Exemple
    • Etudiant(No_etu, Nom_etu, Adr_etu)
    • Cours(Code, Libellé)
    • Prof(Nom_prof, Prénom)
r gle 2
Règle 2
  • Clé associée à E1 (ou E2) -> attribut de E2 (ou E1)
  • Attributs de R -> attributs de E2 (ou E1)
  • Exemple:
    • Etudiant(No_etu, Nom_etu, Adr_etu, No_plaque)
r gle 3
Règle 3
  • Clé associée à E1 -> attribut de E2
  • Attributs de R -> attributs de E2
  • Exemple
    • Cours(Code, Libelle, Prof_resp)
r gle 4
Règle 4
  • Création d'une nouvelle relation R
  • Clé de E1 + Clé de E2 -> clé de R
  • Attributs de R-> Attributs de R
  • Exemple
    • Inscription(No_étudiant, No_cours, Date_inscription)
r gle 5
Règle 5
  • Création d'une nouvelle relation R
  • Attribut multivalué -> constituant
  • Clé du type d'entité associé -> constituant
  • Clé de la relation : tout le schéma
  • Exemple:
    • Fonctions(Nom_enseig, Fonction)
r sultat
Résultat
  • Prof(Nom_prof, Prénom)
  • Etudiant(No_etu, Nom_etu, Adr_etu, No_plaque)
  • Cours(Code, Libelle, Prof_resp)
  • Inscription(No_étudiant, No_cours, Date_inscription)
  • Fonctions(Nom_enseig, Fonction)
remarques2
Remarques
  • Règles de traduction => relations en 3ème FN
  • Bon schéma E/A => bon schéma relationnel