Académique Documents
Professionnel Documents
Culture Documents
données
Objectifs du cours
Comprendre les concepts, les objectifs, les langages des bases de
données
3
Bibliographie
1. Bases de données, Georges Gardarin S8/63323-25 S12/1318-1323
6
Systèmes de fichiers SJF
L’utilisation de fichiers impose à l’utilisateur de connaître :
le mode d’accès (séquentielle, indexée, …)
L’organisation physique des données (enregistrement)
et la localisation des fichiers qu’il utilise afin de pouvoir
7
Systèmes de fichiers SJF
8
Gestion des données (1)
La gestion de données par l’utilisation de fichiers présente de
nombreux inconvénients:
1. Absence de standardisation
plusieurs formats de stockage, plusieurs langages,
5. Partage de données
Pas de solution standardisée
6. Confidentialité
11
L’approche "bases de données"
Modélisation des données
Éliminer la redondance des données
Centraliser et organiser correctement les données
Plusieurs niveaux de modélisation
Outils de conception
14
SGBD relationnels (SGBDR)
Logiciels commerciaux/payants:
Oracle (SGBDR le plus utilisé)
Microsoft SQL server
IBM DB2
Sybase Anywhere
Microsoft Access
…
Logiciels libres/gratuits:
MySQL
PostrgreSQL
SQLite
mSQL
…
15
Architecture des SGBD
Trois niveaux de description des données ont été définis
17
Schéma logique ou conceptuel
décrit par un schéma conceptuel :indique quelles
sont les données stockées et quelles sont leurs
relations
18
Schéma externe (vue)
Chaque groupe d'utilisateurs manipulant les données
dispose d'une description de ces données adaptée à
l'utilisation qu'il en fait
19
Objectifs des SGBD
1. Indépendance physique des données
2. Indépendance logique des données
3. Manipulation simple
4. Gestion des vues
5. Optimisation des questions
6. Gestion de la cohérence des données
7. Gestion des pannes
8. Concurrence d’accès
9. Gestion de la confidentialité
10. Standards
20
Indépendance Physique
Indépendance du modèle physique ( Les données) par rapport
aux programmes:
Indépendance entre structures de données et structures de
stockage .
Syntaxe
SELECT <structure des résultats>
FROM <relations>
WHERE <conditions>
Ex: Quels sont les noms et prénoms des étudiants ayant une note
entre 10 et 12 en ASD1 et entre 10 et 11 en SI ? 25
Objectifs des SGBD
1. Indépendance physique des données
2. Indépendance logique des données
3. Manipulation simple
4. Gestion des vues
5. Optimisation des questions
6. Gestion de la cohérence des données
7. Gestion des pannes
8. Concurrence d’accès
9. Gestion de la confidentialité
10. Standards
26
Des vues multiples des données
Les vues permettent d’implémenter l’indépendance
logique en permettant de créer des relations
virtuelles
Vue = Question stockée
Le SGBD stocke la définition et non le résultat
Exemple :
la vue des patients qui habitent à Sétif
la vue des projets de chaque service (chaque employer
ne peut voir que les projets de son service)
...
27
Objectifs des SGBD
1. Indépendance physique des données
2. Indépendance logique des données
3. Manipulation simple
4. Gestion des vues
5. Optimisation des questions
6. Gestion de la cohérence des données
7. Gestion des pannes
8. Concurrence d’accès
9. Gestion de la confidentialité
10. Standards
28
Exécution et Optimisation
Efficacité des accès aux données
Ces langages doivent permettre d’obtenir des réponses aux
interrogations en un temps « raisonnable ».
Le SGBD prend en charge l’optimisation du coût et le nombre
d’accès (E/S) d’une requête
29
Objectifs des SGBD
1. Indépendance physique des données
2. Indépendance logique des données
3. Manipulation simple
4. Gestion des vues
5. Optimisation des questions
6. Gestion de la cohérence des données
7. Gestion des pannes
8. Concurrence d’accès
9. Gestion de la confidentialité
10. Standards
30
Intégrité Logique (Contraintes d’intégrité )
Les données sont soumises à un certain nombre de contrainte qui
définissent un état cohérent de la base
Contrôle sur les données élémentaires : Elles doivent pouvoir être
exprimées simplement et vérifiées automatiquement à chaque insertion,
modification ou suppression de données, par exemple :
Contrôle de types : Nom doit être alphabétique
Contrôle de valeurs : Salaire mensuel entre 15000 et 500000 , l’âge
d’une personne > 0 .
Contrôle sur les relations entre les données
Relations entre données élémentaires:
Prix de vente > Prix d'achat
Relations entre objets:
Unl’on
Dés que employer
essaienede
doit être rattaché
saisir qu'à qui
une valeur un seul
ne service.
respecte pas cette
contrainte, le SGBD refuse cette valeur. 31
Objectifs des SGBD
1. Indépendance physique des données
2. Indépendance logique des données
3. Manipulation simple
4. Gestion des vues
5. Optimisation des questions
6. Gestion de la cohérence
7. Gestion des pannes
8. Concurrence d’accès
9. Gestion de la confidentialité
10. Standards
32
Intégrité Physique
Motivations: Tolérance aux Pannes
Transaction Failure: Contraintes d'intégrité, Annulation
System Failure: Panne de courant, Crash serveur ...
Media Failure: Perte du disque
Communication Failure: Défaillance du réseau
Transaction:
Ensemble d'opération élémentaires regroupées devant
s'exécuter toutes ou sinon aucune.
Objectifs:
Assurer l'atomicité des transactions
Garantir la durabilité des effets des transactions commises
Moyens:
Journalisation : Mémorisation des états successifs des données
Un SGBD doit intégrer des mécanismes de reprise après panne33
Transaction
Incohérence possible...
Etat cohérent Etat cohérent
Begin Commit
Transaction
Begin Begin
Compte1 = Compte1 - 3000 Compte1 = Compte1 - 3000
Compte2 = Compte2 + 3000 Compte2 = Compte2 + 3000
Commit T1 Commit T1
Panne ou crash
disque
Restaurer les données telles
qu'elles étaient avant la
Restaurer les données telles
qu'elles étaient après la transaction.
transaction.
Annuler le débit !! 35
Objectifs des SGBD
1. Indépendance physique des données
2. Indépendance logique des données
3. Manipulation simple
4. Gestion des vues
5. Optimisation des questions
6. Gestion de la cohérence
7. Gestion des pannes
8. Concurrence d’accès
9. Gestion de la confidentialité
10. Standards
36
Partage des données
37
Isolation et Cohérence
BD
40
Objectifs des SGBD
1. Indépendance physique des données
2. Indépendance logique des données
3. Manipulation simple
4. Gestion des vues
5. Optimisation des questions
6. Gestion de la cohérence
7. Gestion des pannes
8. Concurrence d’accès
9. Gestion de la confidentialité
10. Standards
41
Standardisation
L’approche bases de données est basée sur plusieurs
standards
Langage SQL (SQL1, SQL2, SQL3…)
Communication SQL CLI (ODBC / JDBC)
Transactions (X/Open DTP, OSI-TP)
42
Trois Fonctions d’un SGBD
Description des données : définition de données,
structuration, grâce à un Langage de Définition de
Données (LDD).
45
Types de modèles de données
Modèle Entité-Association
46
Types de modèles de données
Modèle hiérarchique (ou arbre)
A l’aide du modèle hiérarchique, le schéma conceptuel peut
être vu comme un graphe arborescent dont les nœuds
correspondent aux classes d’objets (entités) et les arcs entre
deux nœuds aux liaisons ou associations entre les entités.
Chaque enregistrement n’a qu’un seul parent (racine).
Les enregistrements frères sont triés dans un ordre particulier.
Avec le modèle hiérarchique, le nombre de flèches pouvant
arriver sur un nœud est donc égal à un (sauf pour le nœud
racine).Liaison de type 1 vers N
47
Types de modèles de données
Modèle hiérarchique (ou arbre)
exemple 1
exemple 2
48
Types de modèles de données
Modèle Réseau ( ou graphe)
A l’aide de ce modèle, le schéma conceptuel peut être vu comme
un graphe général où les nœuds correspondent aux classes
d’objets et les arcs entre deux nœuds aux associations
Est un modèle hiérarchique étendu qui autorise des relations
transverses (i.e. relations plusieurs-à-plusieurs entre des
enregistrements liés).
Un enregistrement peut être un membre ou un enfant dans
plusieurs ensembles .
Liaison de type N vers N
la notion de nœud racine n’existe pas avec le modèle réseau.
49
Types de modèles de données
Modèle Réseau ( ou graphe)
exemple 1
exemple 2
50
Types de modèles de données
Modèle Relationnel
Les informations décomposées et organisées sont stockées
dans des tables.
Le schéma relationnel est l'ensemble des RELATIONS qui
modélisent le monde réel ; tel que les relations représentent
les entités du monde réel (par exemple : des personnes, des
objets…etc.) ou les associations entre ces entités.
Liaison de type N vers 1
51
Types de modèles de données
Modèle Objet
Permet de voir une base de données comme un ensemble de
classes d’objets, ayant des liens d’héritage, d’agrégation, de
composition ou de simple association entre elles.
52