sgbd relationnels resume table des matieres

publicité
SGBD RELATIONNELS
PIERRE MARCENAC
RESUME
Cet ouvrage a pour objectif de clarifier et situer les différents
paramètres internes des Systèmes de Gestion de Bases de Données
Relationnels (SGBDR) qu'il est aujourd'hui fondamental de maîtriser afin
d'améliorer leurs performancesIl se propose de vous aider à :
● optimiser un système existant et connaître les impacts de certains
paramètres en fonction du type d'applications fonctionnant sur le
système
● choisir un SGBDR en ayant comme contrainte les critères de
performances, et ainsi se rendre compte des différentes opérations qu'il
sera nécessaire d'effectuer pour régler le système (opération de
"Tuning")
Il débute par une étude des paramètres à prendre en compte et
des différents algorithmes internes pour l'exécution des requêtes de
lecture et de mises à jourPuis, ces paramètres et algorithmes sont
discutés ainsi que leur adéquation aux différents types d'applications
rencontrésIl présente enfin une étude comparative des différentes
approches proposées dans les principaux SGBDR du marché.
C e livre s'adresse donc aux Administrateurs de Bases de
Données (ABD) et programmeurs d'applications sur SGBDRIl intéressera
aussi les décideurs, utilisateurs, étudiants et enseignants désirant
approfondir leurs connaissances de ces systèmes.
TABLE DES MATIERES
CHAPITRE 1
1
2
3
4
CHAPITRE 2
1
2
3
CHAPITRE 3
1
INTRODUCTION
LE RELATIONNEL AUJOURD'HUI
LES GAINS DU RELATIONNEL
2.1
L'évolution de la gestion des données
2.2
Une architecture de données à trois niveaux
2.3
Fonctionnement d'un SGBD implantant trois niveaux
2.4
Les défis du relationnel
2.5
Résumé des tendances d'aujourd'hui et des gains du relationnel
MAIS ALORS, OÙ SONT LES PROBLEMES ?
3.1
Influence de la flexibilité sur les performances
3.2
Influence de l'architecture à 3 niveaux
3.3
Influence du type d'applications et rôle de l'ABD
3.4
Résumé des considérations et objectifs de l'étude
3.5
Organisation de l'ouvrage
PRESENTATION D'UN EXEMPLE SIMPLE
1
1
2
2
3
5
6
9
10
10
12
12
13
14
15
OPTIMISATION LOGIQUE DE LA BASE
INTRODUCTION ET RAPPELS SUR LA CONCEPTION LOGIQUE
OPTIMISATION DU SCHEMA RELATIONNEL
2.1
La dénormalisation
2.2
Le stockage de valeurs redondantes et la codification
OPTIMISATION DES ORDRES SQL
3.1
Introduction
3.2
Performances des opérateurs SQL
17
17
23
24
26
27
27
28
3.3
32
Résumé des forces et des faiblesses du langage
LA GESTION PHYSIQUE DES DONNEES
COMMENT LE SGBD GERE LES DONNEES?
1.1
Une gestion propre au SGBDR
1.2
Interférences avec le système d'exploitation
35
35
36
37
2
3
CHAPITRE 4
1
2
3
4
5
CHAPITRE 5
1
2
CHAPITRE 6
1
2
3
4
1.2
Interférences avec le système d'exploitation
LA GESTION DE LA MEMOIRE CENTRALE
2.1
Gestion des données de l'utilisateur: mémoire cache
2.2
Algorithmes d'allocation de la mémoire cache
2.3
Zone de mémoire partageable
2.4
Gestion de l'activité des applications de l'utilisateur
2.5
Gestion des processus SGBD
2.6
Gestion de la mémoire centrale dans les SGBDR commercialisés
LA GESTION DES FICHIERS DE LA MEMOIRE SECONDAIRE
3.1
La taille des fichiers de la base
3.2
Les paramètres affectant l'emplacement des fichiers
3.3
Gestion de la mémoire secondaire dans les SGBDR commercialisés
37
38
38
39
41
42
42
43
49
50
50
54
LA GESTION DES METHODES D'ACCES AUX DONNEES
QU'EST-CE-QU'UNE METHODE D'ACCES ?
PANORAMA DES METHODES D'ACCES AUX DONNEES EXISTANTES
2.1
La méthode séquentielle
2.2
La méthode relative ou accès direct
2.3
Les méthodes basées sur les index
2.4
La méthode du "Hashing"
2.5
La mise en Clusters
LES METHODES D'ACCES BASEES SUR LES INDEX
3.1
Fonctionnement d'un index
3.2
Index hiérarchiques
3.3
Types d'index
3.4
Avantages et inconvénients des index
3.5
Quand doit-on créer des index ?
3.6
Mise en œuvre des index hiérarchiques: ISAM et B- Trees
3.7
Les index dans les principaux SGBDR du marché
LE HACHAGE
4.1
Fonctionnement du hachage
4.2
Avantages et inconvénients du hachage
4.3
Quand peut-on utiliser le hachage ?
4.4
Le hachage dans les SGBDR du marché
4.5
Quand utiliser le hachage plutôt que les index ?
LA MISE EN CLUSTERS
5.1
Qu'est ce qu 'une mise en Clusters ?
5.2
Le Clustering dans les principaux SGBDR du marché
5.3
Les index sur Cluster
5.4
Les index sur Cluster et les SGBDR du marché
61
61
63
63
63
63
64
64
64
64
67
68
69
71
72
77
83
83
84
86
87
88
89
89
90
91
93
OPTIMISATION DES REQUETES EN LECTURE
LE FONCTIONNEMENT DU SGBDR EN RECHERCHE DE DONNEES
1.1
Les différentes unités fonctionnelles d'un SGBDR
1.2
Le rôle de l'analyseur de requêtes
1.3
Le rôle du gestionnaire de données
LES OPTIMISEURS DE REQUETES
2.1
Le rôle de l'optimiseur de requêtes
2.2
Les différentes caractéristiques des optimiseurs de requêtes
2.3
Classification des optimiseurs de requêtes
2.4
Les optimiseurs de requêtes dans les principaux SGBDR du marché
95
95
96
98
98
98
98
100
106
107
OPTIMISATION DES REQUETES EN MISE A JOUR
LE CONCEPT DE TRANSACTION
1.1
Introduction
1.2
Pourquoi une transaction ?
1.3
Propriétés des transactions
LES PROBLEMES LIES AU MECANISME DU COMMIT-ROLLBACK
2.1
L'avortement en cascade
2.2
Avortement en cascade et performances
2.3
L'exécution rigoureuse des transactions
2.4
Problèmes posés par le mécanisme du Commit/Rollback et performances dans les SGBDR
113
113
113
115
117
119
120
122
122
124
CONCURRENCE ET SERIALISIBILITE DES TRANSACTIONS
3.1
Exemple de concurrence et verrouillage
125
125
3.2
Type de verrous
3.3
Verrouillage implicite dans les SGBDR
3.4
Libération automatique des verrous
3.5
Granularité du verrouillage
3.6
Impact de la granularité du verrouillage sur les performances
3.7
Mécanismes de verrouillage dans les SGBDR commercialisés
ARCHITECTURE ET FONCTIONNEMENT INTERNE DU SGBDR
4.1
Architecture interne du SGBDR
4.2
Fonctionnement des modules transactionnels et impacts sur les performances
4.3
Technique pour assurer l'atomicité des transactions
128
128
129
129
130
131
143
144
146
147
5
6
7
8
9
CHAPITRE 7
1
2
3
4
5
6
CHAPITRE 8
1
2
3
4
4.3
Technique pour assurer l'atomicité des transactions
4.4
Technique pour assurer la sérialisibilité, la récupérabilité et l'exécution rigoureuse des transactions
LE GESTIONNAIRE ET LA TABLE DE VERROUS
5 .1
Fonctionnement
5.2
Performances des tables de verrous
LE PROTOCOLE DE VERROUILLAGE A DEUX PHASES
LES PROBLEMES DE L'INTERBLOCAGE ET DES TUPLES FANTOMES
7.1
Interblocages (ou "Deadlocks")
7.2
Mécanismes de détection de l'interblocage et impacts sur les performances
7.3
Mécanismes de résolution de l'interblocage
7.4
Conseils pour éviter les interblocages
7.5
Mécanismes de détection et de résolution dans les SGBDR commercialisés et impacts sur les
performances
7 .6
Le problème des tuples fantômes
VERROUILLAGE ET OPTIMISATION DES PERFORMANCES DANS LES SGBDR
8.1
Systèmes avec contention de ressources mais pas de données
8.2
Systèmes avec contention de données mais pas de ressources
8.3
Estimation de la charge du travail d'un SGBDR
LES BENCHMARKS
147
147
150
150
151
152
153
153
154
157
158
TECHNIQUES DE REPRISE SUR PANNE
OBJECTIFS ET TYPES DE PANNES
LE FONCTIONNEMENT DU GESTIONNAIRE DE DONNEES
2.1
Résumé du fonctionnement interne du SGBDR
2.2
Fonctionnement du gestionnaire de mémoire cache
LE JOURNAL DES TRANSACTIONS ET LE GESTIONNAIRE DES RECUPERATIONS
3.1
Nécessité d'un journal de transactions
3.2
Fonctionnement d'un journal de transactions
3.3
Performances des journaux de transactions logiques contre physiques
3.4
Minimisation de la taille d'un journal physique
3.5
Fin du journal
3.6
Le journal de transactions dans les SGBDR commercialisés
PERFORMANCES DANS LES MECANISMES DE REPRISE: LES POINTS DE COHERENCE
4.1
Qu 'est ce qu 'un point de cohérence?
4.2
Performances des SGBDR et points de cohérence
4.3
Les CheckPoints dans les SGBDR commercialisés
FONCTIONNEMENT DES MECANISMES DE REPRISE A CHAUD
5.1
Quatre fonctionnements de base pour la reprise à chaud
5.2
Les reprises à chaud qui nécessitent les actions Défaire et Refaire
5.3
Les reprises à chaud qui nécessitent les actions défaire mais pas refaire
5.4
Les reprises à chaud qui nécessitent les actions refaire mais pas défaire
5.5
Les reprises à chaud qui ne nécessitent ni actions défaire ni actions refaire
5.6
Fonctionnement des reprises à chaud dans les SGBDR commercialisés
LES MECANISMES DE REPRISE A FROID
6.1
Les différentes approches
6.2
Mécanismes de reprise à froid dans les SGBDR commercialisés
173
173
175
176
177
184
184
185
186
187
188
188
191
191
192
193
196
196
197
199
199
202
202
205
205
207
UNE APPROCHE MATERIELLE POUR LES PERFORMANCES
INTRODUCTION
ARCHITECTURE GENERALE D'UNE MACHINE BASE DE DONNEES
LA MACHINE TERADA TA DBC/1012
3.1
Introduction
3.2
Architecture physique de la machine DBC/1012
3.3
Répartition et accès aux données sur le disque
3.4
Les transactions dans le DBC/1012
213
213
216
216
216
221
224
227
3.5
La reprise sur panne
3.6
Le verrouillage dans le DBC/1012
LE SERVEUR S32 DE COPERNIQUE
4.1
Présentation de la machine
229
231
234
234
4.2
235
Caractéristiques de la machine fonctionnelle base de données
CONCLUSION
ANNEXES
ANNEXE 1
ANNEXE 2
ANNEXE 3
158
160
161
163
165
168
169
239
RAPPELS SUR LE MODELE RELATIONNEL
RAPPELS SUR LE LANGAGE SQL
LES PRINCIPAUX SGBDR DE L'ETUDE
241
241
251
261
GLOSSAIRE
269
BIBLIOGRAPIDE ET REFERENCES
295
INDEX
299
TOP
Téléchargement