176
Chapitre 6. Utilisation des index
6.2 VUES DE GESTION DYNAMIQUE
POUR LE MAINTIEN DES INDEX
Nous l’avons vu, un index créé n’est pas forcément utilisé. Notamment, l’optimiseur
peut choisir de parcourir la table au lieu d’utiliser l’index, si celui-ci est peu sélectif.
Tout index possède un coût de maintenance, c’est-à-dire qu’il doit répercuter en
temps réel toutes les modifications apportées à la table sur les colonnes qui composent sa clé. Un index inutilisé est donc pénalisant pour les performances, ainsi bien
sûr que pour l’espace de stockage : il consomme de l’espace disque sans aucune
utilité. Il faut donc le supprimer. Mais comment savoir si un index est utilisé ou
non ? Vous avez à disposition une vue dynamique qui vous offre toutes les informations nécessaires. Cette vue s’appelle sys.dm db index usage_stats. Elle affiche les
informations suivantes du tableau 6.1.
Tableau 6.2 — Résultat de sys.dm_db_index_usage_stats
Colonne
Signification
user_seeks
nombre de recherches à travers l’index dues à une requête utilisateur
user_scans
nombre de parcours du nœud feuille de l’index dus à une requête
utilisateur
user_lookups
nombre de recherches de clés (bookmark lookups) dues à une requête
utilisateur
user_updates
nombre de mises à jour de l’index dues à une requête DML (INSERT,
UPDATE, DELETE) utilisateur
last_user_seek
dernière recherche à travers l’index due à une requête utilisateur
last_user_scan
dernier parcours du nœud feuille de l’index dû à une requête utilisateur
last_user_lookup
dernière recherche de clés (bookmark lookups) due à une requête
utilisateur
last_user_update
dernière mise à jour de l’index due à une requête DML (INSERT,
UPDATE, DELETE) utilisateur
system_seeks
nombre de recherches à travers l’index dues à une requête système
system_scans
nombre de parcours du nœud feuille de l’index dus à une requête
interne
system_lookups
nombre de recherches de clés (bookmark lookups) dues à une requête
interne
system_updates
nombre de mises à jour de l’index dues à une requête DML (INSERT,
UPDATE, DELETE) interne
last_system_seek
dernière recherche à travers l’index due à une requête système
➤
Précédent

- 188/334

Suivant