Introduction aux Syst - PowerPoint PPT Presentation

About This Presentation
Title:

Introduction aux Syst

Description:

09:00 10:00 Introduction sur syst me de gestion de BD. 10:00 10: ... pas en forme normale si elle admet un (ou plusieurs) attribut (ou groupe ... – PowerPoint PPT presentation

Number of Views:40
Avg rating:3.0/5.0
Slides: 74
Provided by: sophie99
Category:
Tags: admet | aux | introduction | syst

less

Transcript and Presenter's Notes

Title: Introduction aux Syst


1
Introduction aux Systèmes de Gestion de Bases de
données
  • U N I V E R S I T E D E G E N E V E
  •   TECFA
  • Dess STAF
  • Miriano Romualdi
  •  
  •  
  •  
  •  

2
Programme0900 1000 Introduction sur
système de gestion de BD1000 10 15
Organisation Ex 1 et explications1015 10 40
Pause1040 1115 Ex 11115 1200
Discussion12 00 1215 Introduction
après-midi12 15 1230 Feed-back cours
Dorel/StephaneMidi1400 1450 Les classes
SQL/Mysql1450 15 30 Ex 21530 1600
Discussion16 00 1615 Ex home
  •  
  •  
  •  
  •  

3
PLAN
  • Base de données (BD)
  • introduction
  • définition
  • les données et leur structuration
  • Systèmes de gestion de base de données (SGBD)
  • Modèles de données

4
Introduction
  • Exemple gestion dune entreprise de transport
    public
  • Lentreprise  GPT  qui s occupe des transports
    publics de la ville dEvèneg, désire se doter
    dun système informatique pour la gestion de son
    réseau. Celui-ci comprend des lignes, des
    véhicules ainsi que des chauffeurs.
  • Le chauffeur  Boubou  est en congé le lundi 30
    octobre. Le 31 octobre, il assure la ligne 2
    avec le véhicule 56.

5
Introduction
  • Questions
  • Un véhicule doit-il toujours assurer la même
    ligne?
  • Qui a assuré la ligne C le 3 octobre entre 16h et
    18h?
  • Comment enregistrer et utiliser les informations
    concernant lentreprise?

6
Pourquoi des Bases de données (BD)?
  • Besoins
  • stocker de gros volumes dinformations
  • partager des informations par une communauté de
    personnes
  • gérer laccès à ces informations
  • gérer des informations cohérentes et
    non-redondantes

7
Notion de Base de Données
  • Une BD doit traduire la connaissance
  • de faits élémentaires
  • Le chauffeur  Boubou  est affecté à la ligne 2
    le 24 juin 1991.
  • de propriétés
  • un chauffeur a un seul permis de conduire, mais
    est compétent pour plusieurs types de véhicule.
  • dévénements
  • le véhicule 124 est supprimé de la circulation.

8
Définition
  • Définition (Adiba, Delobel 1982)
  • ensemble structuré de données enregistrées sur
    des supports informatiques pour satisfaire
    simultanément plusieurs utilisateurs de façon
    sélective et en temps opportun.

9
Les données
  • Exemple
  • le chauffeur Boubou assure la ligne 2 avec le
    véhicule 56.
  • le chauffeur Boubou assure la ligne A avec le
    véhicule 4.
  • le chauffeur Lulu assure la ligne 2 avec le
    véhicule 86.
  • Les données
  • Chauffeur Boubou, Lulu
  • Véhicule 25,4,56,86
  • Ligne A,2

10
Structuration des données
  • Les données structurées
  • Description ou schéma de la BD
  • Chauffeur Mot
  • Ligne Mot
  • Véhicule Mot

Chauffeur
Ligne
Véhicule
Boubou
2
56
A
Boubou
4
86
2
Lulu
11
Les données
  • Une donnée prend un lieu et y reste.
  • Une donnée ne peut être atteinte quau travers de
    son nom, autant par les développeurs que par les
    utilisateurs.

NOM
VALEUR
LIEU
12
PLAN
  • Base de données (BD)
  • Systèmes de gestion de base de données (SGBD)
  • principe
  • fonctionnalités
  • Modèles de données

13
Systèmes de Gestion de Bases de Données
14
Fonctionnalités dun SGBD
  • description et utilisation des informations
    (définition, interrogation, mise-à-jour)
  • gestion et contrôle dintégrité
  • mise en œuvre de la confidentialité
  • gestion des accès concurrents
  • assurance dune certaine sécurité de
    fonctionnement

15
Interrogation dune BD
  • Interroger les données de la BD
  • programmer la recherche
  • langage plus ou moins complexe
  • interrogation visuelle, tactile, vocale ..
  • Exploiter les liens entre données
  • Dériver de nouvelles informations

16
Gestion de lintégrité
  • Les modifications de la base (insertion,
    suppression, modification) doivent respecter les
    coutumes du monde réel.
  • structuration de la BD
  • définition de règles dintégrité
  • RI propriété devant toujours être vérifiée par
    les données
  • exemple un chauffeur ne doit pas conduire plus
    de 40h par semaine.

17
Gestion de la confidentialité
  • BD partagée par plusieurs utilisateurs
  • ne rendre accessibles certaines données quaux
    personnes autorisées
  • Définition de droits daccès
  • définir quelles informations doivent être
    protégées de quelles personnes
  • exemple les usagers nont pas à connaître les
    horaires des chauffeurs.

18
Concurrence daccès
  • Accès simultané aux données par plusieurs
    utilisateurs
  • détecter les éventuels conflits
  • les traiter
  • exemple vouloir affecter des chauffeurs à
    plusieurs lignes simultanément
  • traiter les demandes séquentiellement

19
Sécurité de fonctionnement
  • Assurer le redémarrage du système en cas
    dincident logiciel ou matériel
  • remettre la BD dans un état satisfaisant

20
PLAN
  • Base de données (BD)
  • Systèmes de gestion de bases de données (SGBD)
  • Modèles de données
  • définitions
  • historique

21
Description dune BD
Domaine dapplication
???
Schéma externe
??
Modélisation
Schéma conceptuel
Schéma interne
Schéma externe
??
Schéma externe
BD
???
Niveau externe
Niveau conceptuel
Niveau interne
ANSI-SPARC
22
Modèle de données
  • Définition ensemble de concepts et des
    notations pour décrire une vision dun domaine
    dapplication
  • Très nombreux modèles
  • modèles conceptuels
  • Entité-Association, relationnel, Merise, objet,
    UML, Z ...
  • modèles  systèmes  (offerts par les SGBD)
  • hiérarchique, relationnel, objet ...

23
Historique
  • 1960 les modèles hiérarchiques
  • 1970 les modèles réseaux
  • 1980 les modèles relationnelles
  • 1990 les modèles objets 

24
Modèles hiérarchique et réseau
  • Exemple
  • Chauffeur (C), Véhicule (V), Permis (P)
  • Modèle hiérarchique
  • Modèle Réseau

C
V
P
25
Modèle relationnel
  • Relation représentation dune association
    particulière entre certains constituants
  • exemple
  • Chauffeur(NoCh//Nom,Prénom,Adresse,)
  • le chauffeur ayant pour numéro NoCh, pour nom
    Nom, pour prénom Prénom et pour adresse
    Adresse

26
Modèle objet
CHAUFFEUR NoChauffeur Nom Prénom Adresse ChangerAd
resse AjouterHeures
27
Modèle objet
  • De nombreux concepts classe, opération,
    association, héritage, agrégation
  • concepts principaux
  • classe ensemble dobjets ayant la même
    structure de données et le même comportement
  • association liens entre les objets des classes
  • Opération/méthode sapplique aux objets dune
    classe.

28
Modèle de données
  • Concepts généraux
  • des entités/classes appelées aussi relations
  • des chauffeurs, des véhicules, des lignes
  • des relations/associations entre des
    entités/classes
  • un chauffeur assure une ligne, conduit un
    véhicule ...

29
Introduction et Définitions
30
Introduction et Définitions
Lignes
E
Ensemble
1,2,3,4,5,6,7,8, A,B,C,D,E,F
e1, e2, e3 en
élément
31
Introduction et DéfinitionsModèles
Conceptuel ou Information
Entité-association Relationnel Objet
Informatique
Relationnel Objet
32
Propriétés dune classe
  • Les objets dune classe partagent en commun un
    schéma informationnel comprenant
  • des attributs associés à des domaines de valeurs
  • pour lesquels les objets vont prendre une ou
    plusieurs valeurs de leur domaine.
  • des méthodes
  • qui, appliquées aux objets de la classe,
    transforment les valeurs quils prennent pour les
    attributs.
  • des états
  • que des méthodes ou des traitements font prendre
    aux objets.

33
Domaine type
Conceptuel
Texte Mot Ordonné (Unité)- Numérique
(Unité)- Booléen Mot Booléens Mots Date Durée
Durée-seconde Durée-mn (/s) Durée-h
(/mn/s) Durée-m(/h/mn/s)
Informatique
Booléens Entiers Flottants Chaine de
caractères Date
34
Domaine(s) opérations
  • Domaine
  • Texte aucune
  • Mot ?
  • Ordonné ? gt lt
  • Numérique ? gt lt -
  • Booléen et ou non
  • Booléens et ou non
  • Date ? pré post
  • Durée ? gt lt -
  • Domaines
  • ltdategt-ltdategt gt ltduréegt
  • ltdategtltdategt gt
  • ltdategtltduréegt gt ltdategt
  • ltpoidsgt est-un ltnumériquegt
  • ltmonnaiegt est-un ltnumériquegt
  • ltpoidsgtltmonnaiegt gt ltmonnaiegt
  • ...

35
Classe - Attribut - Domaine
  • CL (A1,A2,A3)
  • Un objet o de CL prend une ou plusieurs valeurs
    du domaine de lattribut A1 oA1 Î dom(A1).
  • VEHICULE (NoVéhicule, Catégorie, Marque,
    NoChâssis, NoMoteur, DateCirculation)
  • Dom(Catégorie) tramway, bus, trolleybus
  • "veh Î Véhicule vehCatégorie tramway ½ bus½
    trolleybus
  • Attribut monovalué un objet prend au plus une
    valeur pour lui.
  • Attribut multivalué un objet peut prendre
    plusieurs valeurs pour lui.

36
Attribut multivalué, groupe dattributs
  • Attribut multivalué (modèle objet)
  • VEHICULE (NoVéhicule, Catégorie, Marque,
    NoChâssis, NoMoteur, DateCirculation)
  • Un objet de Véhicule peut alors prendre plusieurs
    valeurs pour DateCirculation
  • Groupe dattributs (modèle objet)
  • VEHICULE (NoVéhicule, Catégorie, Marque,
    NoChâssis, (NoMoteur, DateCirculation))

37
Attribut valeurs obscures
  • Pour chaque attribut A de CL, il faut indiquer si
    un objet de CL peut prendre une valeur obscure
    pour A.
  • Valeur obscure valeur inconnue, valeur
    impossible
  • Une valeur qui nest pas obcure est claire.
  • VEHICULE (NoVéhicule-, Catégorie, Marque,
    NoChâssis, NoMoteur, DateCirculation-)
  • Les attributs NoVéhicule et DateCirculation
    admettent des valeurs obscures.

38
Attribut permanent
  • Un attribut A dune classe est permanent, si la
    valeur claire prise pour A par tout objet de la
    classe ne peut être modifiée.
  • VEHICULE (NoVéhicule-, Catégorie, Marque,
    NoChâssis, NoMoteur, DateCirculation-)
  • Un objet de Véhicule conserve les valeurs prises
    pour NoVéhicule, Catégorie, Marque et NoChassis,
    alors que son NoMoteur, sa DateCirculation
    peuvent être modifiés

39
Méthode
  • Méthode dune classe CL une action qui concerne
    un objet de cette classe.
  • VEHICULE (NoVéhicule-, Catégorie, Marque,
    NoChâssis, NoMoteur, DateCirculation-)
  • méthode créer (véhicule Véhicule)
  • méthode activer (véhicule Véhicule)
  • méthode supprimer (véhicule Véhicule)
  • méthode désactiver (véhicule Véhicule)
  • méthode contrôler (véhicule Véhicule)
  • méthode réparer (véhicule Véhicule)

40
Etat
  • Etat attribut mis-à-jour seulement par des
    transactions (ou traitements)
  • Un état donne une trace du travail dune méthode
    sur un objet
  • VEHICULE (NoVéhicule-, Catégorie, Marque,
    NoChâssis, NoMoteur, DateCirculation-)
  • Si DateCirculation est un état contrôlé par
    activer et désactiver
  • - activer (véhicule) fait passer sa
    datecirculation dune valeur obscure à une valeur
    claire, la date du jour.
  • - désactiver (véhicule) la fait passer de claire
    à obscure.
  • Alors DateCirculation est un attribut-état de la
    classe VEHICULE.

41
Identifiant / Clé
  • Comment retrouver un objet parmi tous les objets
    de sa classe?
  • Rép. technologique en lui donnant un
    identificateur dobjet (oid)
  • Rép. conceptuelle un ensemble dattributs K de
    CL forme un identifiant (clé) obligatoire de CL
    si
  • Tous les attributs de K sont monovalués, sans
    valeur obscure, permanents
  • Deux objets o et o de CL ne peuvent prendre les
    mêmes valeurs pour K oK ? oK
  • K est minimal il nexiste aucun sous-ensemble
    de K vérifiant la propriété précédente.

42
Identifiants primaires
  • Au niveau conceptuel, il peut exister plusieurs
    identifiants primaires.
  • Au niveau technologique, il y en a un qui est
    privilégié.
  • VEHICULE (NoChâssis / NoVéhicule // Catégorie,
    Marque, NoMoteur, DateCirculation)

43
Identifiant/Clé
  • K est un identifiant dune classe CL si
  • Tous les attributs de K sont monovalués
  • Deux objets o et o de CL ne peuvent prendre les
    mêmes valeurs pour K oK ? oK
  • K est minimal il nexiste aucun sous-ensemble
    de K vérifiant la propriété précédente.
  • Remarque un simple identifiant ne permet pas
    didentifier tous les objets de la classe, à
    cause des valeurs obcures.
  • Il nest obligé dêtre permanent.
  • VEHICULE (NoChâssis / NoVéhicule / NoMoteur //
    Catégorie, Marque, DateCirculation)

44
Représentation
45
ReprésentationEntité-Relation
ENTITE Identifiant Attribut1 Attribut2 ...
46
ReprésentationObjet
CLASSE Attribut1valuation Attribut2 Methode1(s
ignature) Methode2() ...
47
Représentation
VEHICULE (NoChâssis / NoVéhicule / NoMoteur //
Catégorie, Marque, DateCirculation)
Véhicule
NoChâssis / NoVéhicule / NoMoteur //
Véhicule
NoChâssis / NoVéhicule / NoMoteur // Catégorie,
Marque, DateCirculation
Véhicule
48
Forme normale
49
Forme normale de classe
  • Une classe est en forme normale si tous ses
    attributs sont monovalués. Ses objets prennent
    une seule valeur par attribut (modèle
    relationnel).
  • Objectif
  • éviter les tableaux
  • permettre laccès aux données par leur nom.

50
Forme non normale de classe
  • Une classe nest pas en forme normale si elle
    admet un (ou plusieurs) attribut (ou groupe
    dattributs) multivalué (modèle objet).
  • ClPers(OidPerson, Adresse, Salaire))
  • attributs multivalués avec deux situations
  • - aucune différence entre les adresses dune même
    personne ok.
  • - comment trouver le salaire du mois de février
    dune personne?
  • Il faut toujours pouvoir atteindre une
    information par son nom, sans avoir besoin de
    connaître son mode dimplémentation (indépendance
    donnée-stockage).

51
Prise en compte informatique
52
Prise en compte informatique
  • Stockage des objets
  • Patitionnement
  • Mécanisme de clés (identifiant) et dindex
  • Choix dune clé primaire

53
Stockage des objets
  • Stockage vertical
  • colonnes attributs
  • lignes objets
  • AFF-CHAUFFEUR (NoAVS, Date, StatutChauffeur,
    NoSérie)
  • Trouver tous les objets qui sont  de réserve 
    pour StatutChauffeur avec leur NoAVS?
  • 1 objet 4 mots 1 page 1000 mots
  • 10000 objets 1 page 250 objets
  • En séquentiel 40 pages dE/S
  • Stockage horizontal
  • lignes attributs
  • colonnes objets
  • correspondance entre oid et no de colonne
  • Trouver tous les objets qui sont  de réserve 
    pour StatutChauffeur avec NoAVS?
  • NoAVS et StatutChauffeur 1mot
  • 1 page 1000 valeurs
  • 10 pages pour Statut-Chauffeur
  • 10 pages pour NoAVS
  • 20 pages dE/S

54
Décomposition
  • CHAUFFEUR
  • (NoAVS//Nom, Prénom, Adresse, DateNaissance,
    Sexe, TotalH)
  • Un objet de Chauffeur 100 mots
  • Une page 1000 mots
  • gt 1 E/S 10 objets
  • CHAUFFEUR-ADM
  • (NoAVS//Nom, Prénom, Adresse, DateNaissance,
    Sexe)
  • CHAUFFEUR-TRV
  • (NoAVS // TotalH)
  • E/S plus efficaces pour les traitements ne
    concernant que les heures de travail dun
    chauffeur
  • Un objet de Chauffeur-Trv 2 mots
  • Une page 1000 mots
  • gt 1 E/S 500 objets

55
Mécanisme de clés et dindex
  • Clé primaire
  • recherche avec oid correspondance entre une clé
    primaire et un oid, puis entre un oid et un lieu
    physique
  • recherche sans oid correspondance entre une clé
    primaire et un lieu physique par le mécanisme de
    hash code ou des arbres balancés
  • rajout dun objet sassurer quil nexiste
    aucun autre objet de même clé.
  • Clé ou index
  • Tables spéciales contenant pour chaque valeur
    dindex la possibilité de retrouver tous les
    objets concernés (1 seul objet si lindex est
    clé).

56
Opérations et langage
57
Opérations et langage
  • Langage de spécification
  • Langage dinterrogation
  • Langage de manipulation
  • Confidentialité
  • Evolution

58
Langage de spécification
  • Classe
  • CHAUFFEUR (Nom, Prénom, NoAVS, Adresse,
    DateNaissance, Sexe, TotalHeures)
  • Prédicat
  • Pour chaque chauffeur, identifié soit par son
    numéro AVS soit par son nom et prénom, on
    conserve son adresse, sa date de naissance ainsi
    que son sexe. L'entreprise GPT désire également
    conserver le nombre total d'heures de conduite de
    chaque chauffeur.

59
Règle dintégrité statique mono-classe
60
Règle dintégrité statique monoclasse
  • Une règle dintégrité se définit à laide dun
    prédicat. Si la ri est monoclasse, elle ne
    concerne quune classe et son prédicat a comme
    variables les attributs de la classe.
  • Une ri est statique si elle ne concerne pas la
    transformation dobjets, mais seulement les
    objets eux-mêmes.

61
Règle dintégrité statique monoclasse
  • LIGNE (CodeLigne, Catégorie, TypeLigne,
    ArrêtDépart, ArrêtArrivée)
  • Pour toute lgn de LIGNE
  • si lgnTypeLigne  circulaire  alors
  • lgnArrêtDépart lgnArrêtArrivée
  • sinon
  • lgnArrêtDépart ? lgnArrêtArrivée
  • finsi

62
DECALAGES ENTRE LE MONDE VIVANT ET LE MONDE
ARTIFICIEL
63
Décalages
  • Pour prendre en compte
  • les objets des classes
  • En prise directe - en dérivation
  • En temps réel - en différé
  • Définitif - Modifiable
  • Présent - Historique
  • Propriétés
  • Contrôle
  • Intégrité
  • Confidentialité
  • Atteignabilité, accès
  • Composition-décomposition

64
Décalages entre le monde vivant et le monde
artificiel
  • Nature du lien entre mondes vivant et artificiel
  • concrétiser rendre concret ce qui était
    abstrait.
  • concret qui exprime quelque chose de réel sans
    que l'on en isole une notion de qualité, de
    relation qui désigne ou qualifie un être réel
    (sujet) qui peut être perçu par les sens ou
    imaginé.(Petit Robert).
  • modélisation représentation non ambigüe et
    fidèle des composants d'un phénomène naturel,
    nécessaires à la compréhension de la partie
    étudiée du phénomène.
  • modèle ensemble de concepts mathématiques qui
    permet de recueillir une modèlisation de
    n'importe quel phénomène d'une même classe.
  • En fait création dun système, support des
    activités
  • Non seulement analyser,observer, mais créer,
    concevoir, puis contrôler

65
Décalages entre le monde vivant et le monde
artificiel
Question ou Action
Question ou Action informatique
Réponse informatique
Réponse
Monde vivant
Monde artificiel
66
Décalages entre le monde vivant et le monde
artificiel
Effort de traduction
Question ou Action
Question ou Action informatique
Effort dinterprétation
Réponse informatique
Réponse
Monde vivant
Monde artificiel
67
Décalages entre le monde vivant et le monde
artificiel
Question ou Action
Question ou Action informatique
ISOMORPHISME ?
Réponse informatique
Réponse
Monde vivant
Monde artificiel
68
Modélisation-Spécification-Implémentation-Exploita
tion-Evolution
69
Modélisation-Spécification-Implémentation-Exploita
tion-Evolution
70
Modélisation-Spécification-Conceptualisation-Implé
mentation-Exploitation-Evolution
71
Modélisation-Spécification-Conceptualisation-Implé
mentation-Exploitation-Evolution
Avec le point de vue linéaire...
évolution
conceptualisation
implémentation
exploitation
analyse
modélisation
spécification
déploiement
évolution
72
De la relativité des étapes ex la redondance
  • Dans le cadre de lanalyse et de la modélisation
  • utile pour recouper les résultats, faciliter la
    prise dinformations danalyse
  • ou impossible à éviter car seule la consolidation
    de résultats va permettre de la dégager ex de
    classes avec plusieurs identifiants.
  • Dans le cadre du niveau conceptuel
  • léliminer et ne la réintroduire quà cause de
    valeurs obscures
  • Dans le cadre de la spécification
  • Ne lintroduire que pour faciliter des accès
  • Dans le cadre de limplémentation
  • Ne pas en introduire de supplémentaire

73
Ex de la redondance
  • Analyse, modélisation
  • AFF-CHAUFFEUR(NoAVS, TotalHeures, Catégorie,
    Date, StatutChauffeur, NoSérie,
    (CodeLigne//Catégorie))
  • La personne responsable de laffectation dun
    chauffeur à une série veut sassurer que le
    chauffeur a bien le bon permis pour conduire les
    véhicules de la ligne.
  • Modèle conceptuel
  • AFF-CHAUFFEUR (NoAVS, Date // StatutChauffeur,
    NoSérie)
  • PERMIS (NOAVS, Catégorie//DatePermis)
  • CHAUFFEUR (NoAVS // TotalHeures...)
  • TRANCHE-SERIE
  • (NoSérie, CodeLigne // )
  • LIGNE (CodeLigne // Catégorie)
  • Modèle de spécification avec redondance
  • TRANCHE-SERIE (NoSérie, CodeLigne //
    Catégorie...)
Write a Comment
User Comments (0)
About PowerShow.com