Aperçu de la fragmentation de l’index
Qu’est-ce que la fragmentation de l’index et pourquoi devrais-je m’y concentrer : La fragmentation existe lorsque l’ordre logique dans l’index (basé sur la valeur clé de l’index) ne correspond pas à l’ordre physique des pages d’index, des pages d’index dans les pages que contient l’index. Chaque fois qu’une opération d’insertion, de mise à jour ou de suppression est effectuée sur les données sous-jacentes, le moteur de la base de données modifie automatiquement l’index. Par exemple, ajouter des lignes à un tableau peut faire en sorte que les lignes divisées stockent des pages existantes dans l’index pour faire de la place à l’insertion de nouvelles clés. Au fil du temps, ces modifications peuvent disperser les informations de l’index dans la base de données (contenant des fragments). La fragmentation se produit lorsque l’ordre logique (basé sur la valeur clé) dans les pages contenues par l’index ne correspond pas à l’ordre physique du fichier de données. Un grand nombre d’index fragmentés peut ralentir la performance des requêtes car une E/S supplémentaire est nécessaire pour trouver les données auxquelles l’index pointe. Plus d’E/S peut ralentir la réponse de l’application, surtout lors d’opérations de scan.
Vérifier la fragmentation de l’index de la base de données
Commander:
Il existe deux façons de défragmenter : réorganiser et recréer les index, reconstruire les index consiste à supprimer d’anciens index et à reconstruire de nouveaux indices dans une transaction, ce qui récupère l’espace disque dur de l’index original et alloue un nouvel espace de stockage pour créer une structure d’index. La réorganisation des index consiste à ne pas allouer de nouvel espace de stockage, à réorganiser les nœuds feuilles de la structure d’index sur la base de l’espace d’origine, afin que l’ordre logique et physique des pages de données soit cohérent, et à libérer l’espace excédentaire dans l’index.
Utilisez la fonction sys.dm_db_index_physical_stats pour détecter le degré de fragmentation, le champ avg_fragmentation_in_percent le pourcentage de fragments logiques retournés, en général, Microsoft recommande un seuil de 30 % :
avg_fragmentation_in_percent >5 % et <=30 % : MODIFIER L’INDICE RÉORGANISE ; avg_fragmentation_in_percent >30 % : RECONSTRUCTION DE L’INDICE ALTER ;
avg_fragmentation_in_percent : Pourcentage de fragmentation par indice, si la fragmentation est inférieure à 10 %~20 %, la fragmentation est peu susceptible d’être un problème,Si la fragmentation de l’indice est à 20 %~40 %, la fragmentation peut poser problème, mais la résolution de l’indice peut être éliminée par réorganisation de l’indice, et la fragmentation à grande échelle (lorsque la fragmentation dépasse 40 %) peut nécessiter une reconstruction de l’indice.
Interrogez les informations de fragmentation pour tous les index d’une table donnée
Réindexation des tables
Reconstruire l’index de toutes les tables de l’ensemble de la base de données
Ressources:La connexion hyperlientérée est visible.
|