Vous pouvez générer un diagramme du plan d'accès en cours pour une instruction SQL ou XPATH afin de déterminer comment votre serveur de données traite une requête. Vous pouvez utiliser les informations disponibles à partir du graphique pour ajuster vos instructions SQL afin d'optimiser les performances.
Avant de commencer
Dans le plan de travail, Visual Explain prend en charge les serveurs de données suivants :
- DB2 Version
9.1.5 for Linux, UNIX, and Windows
- DB2 Version 9.5.1 for Linux, UNIX et Windows et
des versions ultérieures
- DB2 Version 9.7.1 for Linux, UNIX et Windows et
des versions ultérieures
- DB2 UDB for z/OS Version 8 (mode compatibilité)
- DB2 UDB for z/OS Version
8 (mode nouvelle fonction)
- DB2 Version 9.1 for z/OS
- DB2 Version 10 for z/OS
- IBM® Informix Dynamic Server (IDS) Version 11.50
- IBM Informix Dynamic Server Version 11.70
- Base de données Oracle 10g édition 2
- Base de données Oracle 11g édition 1
Si vous souhaitez créer des diagrammes de plan d'accès pour DB2 for z/OS, vous devez configurer le sous-système DB2 que vous utilisez : Configuration des sous-systèmes DB2 for z/OS pour Visual Explain
Restriction : Pour IBM Informix Dynamic Server, Visual Explain
ne peut pas expliciter les instructions SELECT qui contiennent les marqueurs de paramètres
ou les variables hôtes.
Pourquoi et quand exécuter cette tâche
Vous pouvez utiliser Visual Explain pour :
- Afficher les statistiques utilisées au moment de l'optimisation.
Vous pouvez comparer ces statistiques aux statistiques du catalogue en cours pour déterminer si une nouvelle liaison du module peut améliorer les performances.
- Déterminer si un index a été utilisé pour accéder à une table.
Si un index n'a pas été utilisé, Visual Explain vous aide à déterminer quelles colonnes pourraient nécessiter une indexation.
- Obtenir des informations sur chaque opération dans le plan d'accès, y compris le coût total estimé et le nombre de lignes extraites (cardinalité).
Procédure
Pour générer le diagramme du plan d'accès en cours d'une requête :
- Facultatif : Définissez les préférences de fonctionnement de Visual Explain et du mode d'affichage des diagrammes.
- Suivez l'une de ces étapes :
- Dans
l'Explorateur de projets de données, cliquez avec le bouton droit de la souris sur
une une procédure mémorisée ou sur une fonction SQL
définie par l'utilisateur et cliquez sur Ouvrir Visual
Explain.
- Dans l'Explorateur de sources de données, cliquez avec le bouton
droit de la souris sur une vue, une procédure mémorisée SQL ou sur une fonction
SQL définie par l'utilisateur contenant une instruction INSERT, UPDATE, DELETE ou SELECT. Sélectionnez Ouvrir
Visual Explain. Si le plan de travail renvoie plus d'une instruction SQL ou XQUERY, le plan de travail utilise la première instruction.
- Dans un éditeur SQL, de routine ou Java, mettez en évidence l'instruction INSERT, UPDATE, DELETE ou SELECT
et cliquez dessus avec le bouton droit de la souris, puis cliquez
sur Ouvrir Visual Explain.
Les tentatives
d'ouverture de Visual Explain à partir d'une instruction SQL dans un éditeur Java échouent si l'instruction SQL contient des
variables déclarées dans votre application. Par exemple, cette instruction SQL
ne peut être analysée par Visual Explain en raison des deux
variables du prédicat :
select count(*), sum(order.price)
from order
where order.date > var_date_1
and order.date < var_date_2
Cependant, une fois que vous liez
ou déployez l'application, vous pouvez utiliser Optim Query
Tuner ou les fonctions de réglage de requête simple dans Data Studio afin de capturer
l'instruction SQL à partir d'un module DB2 ou
de la mémoire cache de l'instruction dynamique, puis vous effectuez le réglage.
Remarque : Visual Explain est désactivé ou émet une exception si
l'instruction SQL sélectionnée ou l'objet sélectionné ne peut être explicité(e). Seules les instructions SQL
de la liste suivante peuvent être explicitées par Visual Explain:
- Pour DB2 for Linux, UNIX et Windows : CALL, Compound
SQL (Dynamic), DELETE, INSERT, MERGE, REFRESH, SELECT, SELECT INTO,
SET INTEGRITY, UPDATE, VALUES ou VALUES INTO.
- Pour DB2 for z/OS : SELECT, INSERT ou le formulaire recherché d'une
instruction UPDATE ou DELETE.
- Sur la première page de l'assistant, spécifiez la fin d'instruction de l'instruction SQL, XPATH ou XQUERY dont vous voulez créer le diagramme de plan d'accès.
- Facultatif : Sur la première page de l'assistant, vous pouvez également configurer diverses options.
- Indiquez si vous souhaitez stocker dans des tables explain les données explain collectées. Si vous choisissez cette option, Visual Explain n'aura pas à collecter les données explain la prochaine fois que vous créerez un diagramme du plan d'accès de la même instruction.
Restriction : Cette option n'est pas disponible pour les serveurs de données Oracle.
- Indiquez quel répertoire doit être utilisé par Visual Explain comme répertoire de travail.
- Si IBM Support nécessite une trace, indiquez s'il faut tracer la création du diagramme du plan d'accès et la collecte des données explain.
- Indiquez si vous souhaitez sauvegarder vos réglages en tant que paramètres par défaut pour tous les diagrammes que vous créez avec Visual Explain. Vous pouvez modifier ces paramètres par défaut via la fenêtre Préférences.
- Sur la seconde page de l'assistant, définissez les valeurs des registres spéciaux pour personnaliser l'environnement d'exécution afin de conditionner la collecte des données explain.
Les valeurs que vous avez définies sont utilisées lorsque Visual Explain exécute l'instruction pour récupérer les données explain.
Avertissement : Prenez connaissance des informations suivantes relatives aux serveurs de données DB2.
- Pour DB2 for z/OS : si vous indiquez des valeurs différentes pour CURRENT SCHEMA et CURRENT SQLID, Visual Explain recherche des tables explain qualifiées par la valeur de CURRENT SQLID. Si Visual Explain ne trouve pas de tables explain qualifiées par la valeur de CURRENT SQLID, Visual Explain tente de créer les tables explain en fonction de cette valeur.
- Pour DB2 for Linux, UNIX, and Windows : si vous remplacez la valeur de CURRENT SCHEMA par une valeur contenant des caractères spéciaux, vous devez délimiter cette valeur à l'aide de guillemets simples.
- Pour DB2 for Linux, UNIX, and Windows : cochez la case Collecter des statistiques de colonne et de groupe de colonnes si vous souhaitez que Visual
Explain collecte des statistiques détaillées sur les colonnes groupées et sur les colonnes référencées par une clause GROUP BY.
- Facultatif : Sur la seconde page de l'assistant, indiquez si vous souhaitez sauvegarder vos réglages en tant que paramètres par défaut pour tous les diagrammes que vous créez avec Visual Explain. Vous pouvez modifier ces paramètres par défaut via la fenêtre Préférences.
- Cliquez sur Terminer pour fermer l'assistant et créer le diagramme.
Résultats
Le plan de travail affiche un diagramme dans la vue
Diagramme de plan d'accès. Dans cette vue, vous pouvez naviguer dans le diagramme, afficher des descriptions des noeuds du diagramme et rechercher des noeuds.