V
Table des matières
5.8.1 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
5.8.2 Création d’une session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
5.9 Outils de supervision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Deuxième partie - Optimisation des requêtes
Chapitre 6 – Utilisation des index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
6.1 Principes de l’indexation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
6.1.1 Index clustered . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
6.1.2 Choix de l’index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
6.1.3 Création d’index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
6.1.4 Optimisation de la taille de l’index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
6.2 Vues de gestion dynamique pour le maintien des index . . . . . . . . . . . . . . . . 176
6.2.1 Obtention des informations opérationnelles de l’index. . . . . . . . . . . . . . . . . 177
6.2.2 Index manquants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
6.3 Vues indexées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
6.4 Statistiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
6.4.1 Statistiques sur les index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
6.4.2 Colonnes non indexées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
6.4.3 Sélectivité et densité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
6.4.4 Consultation des statistiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
6.4.5 Maintien des statistiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
6.5 Database Engine Tuning Advisor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Chapitre 7 – Transactions et verrous. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
7.1 Définition d’une transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
7.2 Verrouillage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
7.2.1 Modes de verrouillage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
7.2.2 Granularité de verrouillage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
7.3 Niveaux d’isolation de la transaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
7.4 Attentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
7.5 Blocages et deadlocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
7.5.1 Détection des blocages par notification d’événements . . . . . . . . . . . . . . . . . 230
7.5.2 Verrous mortels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
Précédent

- 7/334

Suivant