Vous pouvez tester les index recommandés
et ceux que vous proposez sans avoir à les créer au préalable. Les résultats de chaque test vous montrent si les
index améliorent les performances de l'instruction SQL en cours, l'espace disque
estimé requis pour les index et si l'optimiseur
DB2 utilise les index dans le chemin
d'accès pour l'instruction SQL en cours.
Procédure
Pour tester virtuellement les index recommandés et les index que
vous proposez :
- Si vous souhaitez optimiser une instruction SQL unique,
procédez comme suit :
- Capturez l'instruction SQL que vous souhaitez
optimiser. Voir Emplacements à partir desquels vous pouvez capturer
une instruction SQL pour l'optimisation de requête unique.
- Sélectionnez l'instruction et cliquez sur le bouton Optimiser l'instruction. La page Exécuter tous les assistants et outils d'analyse pour une requête unique
de la section Appeler s'ouvre.
- Si vous ne savez pas si les statistiques des objets
du plan d'accès sont valides pour l'instruction, exécutez l'assistant Statistiques,
puis les instructions de contrôle RUNSTATS recommandées. Ensuite,
après avoir sélectionné l'option Réexpliciter la requête
sur la page Exécuter les assistants Requête unique et les outils,
exécutez l'assistant Statistiques à nouveau pour vérifier qu'il n'existe pas d'autres
recommandations supplémentaires.
- Si vous souhaitez optimiser une charge de travail de requête et tester les index virtuellement pour une instruction SQL unique faisant partie de cette charge,
procédez comme suit :
- Si vous ne savez pas si les statistiques des objets
des plans d'accès sont valides pour la charge de travail de la requête, exécutez l'assistant Statistiques de la charge de travail,
puis les instructions de contrôle RUNSTATS recommandées.
Ensuite,
après avoir sélectionné l'option Réexpliciter la requête
sur la page Exécuter les assistants Charge de travail,
exécutez l'assistant Statistiques de la charge de travail à nouveau pour vérifier qu'il n'existe pas d'autres
recommandations supplémentaires.
- Dans la page Afficher les instructions de la charge de travail,
triez les instructions pour identifier celles qui ne répondent pas à vos exigences de
performances. Vous pouvez ouvrir cette page
dans la section Gérer.
- Cliquez avec le bouton droit de la souris sur l'instruction, puis sélectionnez Run
Single-query Advisors and Tools on the Selected Statement (Exécuter les assistants Requête unique et les outils sur l'instruction sélectionnée).
- Si vous souhaitez uniquement tester les index que vous proposez : Dans la partie gauche de l'assistant de flux de travaux, développez Avancé
sous Requête unique. Sélectionnez Tester les index candidats.
La page Tester les index candidats s'ouvre.
- Si vous souhaitez tester les index que l'assistant Index
recommande ainsi que ceux que vous proposez, procédez comme suit.
- Sélectionnez l'option Réexpliciter la requête
sur la page Exécuter les assistants Requête unique et les outils.
- Exécute l'assistant Index pour générer des recommandations relatives aux nouveaux index.
- Si l'assistant Index génère des recommandations, cliquez deux fois sur
la ligne Index dans la table
Récapitulatif de la page
Consulter les recommandations de l'assistant Requête unique
de la section Consulter. La section Index s'ouvre.
- Cliquez sur le bouton Tester les index candidats.
- Sur la page Tester les index candidats,
sélectionnez les index que vous souhaitez tester virtuellement.
- La table Index candidats
- Si vous avez exécuté l'assistant Index, les nouveaux index recommandés sont
répertoriés dans cette table. Vous pouvez éditer ces définitions d'index ou les
laisser telles quelles.
Vous pouvez ajouter et éditer vos propres index dans la table en cliquant sur
Ajouter un index.
- La table Index existants
- Pour que vous puissiez vous y référer, cette table répertorie tous les
index existants sur les tables référencées par l'instruction SQL en cours.
- Cette table contient une colonne intitulée Supprimer virtuellement. Cochez la case des index existants que vous ne souhaitez pas inclure dans le test virtuel.
Cette case
est cochée par défaut dans les situations suivantes :
- Une recommandation indique que l'index doit être modifié, et l'index de remplacement
figure dans la table Tester les index candidats. Vous ne pouvez pas
inclure dans le test les index qui doivent être modifiés d'après une recommandation de l'assistant Index.
- Une recommandation indique que l'index doit être supprimé. Vous pouvez décocher la case
pour inclure l'index dans le test.
- Après avoir ajouté et édité les index que vous souhaitez tester
virtuellement, cliquez sur le bouton Tester les index candidats.
- Dans la fenêtre Tester les index candidats, personnalisez
les statistiques des index ou conservez les statistiques par défaut.
Vous pouvez également choisir de générer un graphique de plan d'accès pour l'instruction
indiquant si les index du test doivent être inclus ou non dans le
nouveau plan d'accès. Cliquez ensuite sur OK pour exécuter le test.
Résultats
En haut à gauche de l'assistant de flux de travaux, une entrée intitulée
"Test Candidate Index n" s'affiche, où n correspond
à un chiffre augmentant par incréments de 1 à chaque test effectué
sur la même instruction SQL dans un projet Query Tuner unique.
Si vous avez choisi de
générer un graphique de plan d'accès, ce graphique s'affiche. Pour ouvrir
la fenêtre Consulter les résultats des tests effectués sur les index candidats,
sélectionnez Tester les index candidats à gauche
de l'assistant de flux de travaux.
Si vous n'avez pas choisi de générer
un graphique de plan d'accès, la page Consulter les résultats des tests effectués sur les index candidats s'ouvre. Cette page répertorie les index testés
et indique si le plan d'accès a utilisé tous les index.
Que faire ensuite
Si vous décidez de créer un ou plusieurs des index que vous avez testés,
cliquez avec le bouton droit de la souris et sélectionnez Afficher le langage de définition de données. Copiez ou enregistrez le langage de définition de données afin de pouvoir
l'exécuter en dehors de l'assistant de flux de travaux. Répétez cette étape pour chaque index que vous souhaitez créer.
Si vous souhaitez exécuter un autre test, revenez
aux recommandations émises par l'assistant Index en cliquant sur l'entrée
"Analysis Result n" correspondante en haut à gauche
de l'assistant de flux de travaux.