Recherche d'instructions SQL non performantes avec EXPLAIN

Dans la vue Structure SQL, vous pouvez visualiser des données EXPLAIN qui présentent des statistiques liées aux plans d'accès des instructions SQL de votre application Java. Vous pouvez identifier les instructions non performantes qui, lorsqu'elles sont révisées, peuvent améliorer les performances de l'application.

Avant de commencer

EXPLAIN est un outil de surveillance de Visual Explain qui génère des informations sur le coût estimé de l'exécution d'une instruction SQL SELECT, INSERT, UPDATE ou DELETE.

Assurez-vous que les conditions du projet et de l'application sont respectées :
  • La prise en charge pureQuery doit être activée sur au moins un projet Java dans votre espace de travail. Votre application doit posséder l'une des caractéristiques suivantes :
    • L'application doit contenir au moins l'un des objets suivants :
      • Un appel à l'une des méthodes de l'interface pureQuery Data
      • Une interface déclarant au moins une méthode annotée qui utilise l'API pureQuery
      • Un fichier pureQueryXML contenant des instructions SQL capturées
    • L'application doit utiliser l'API Persistence Java ou Hibernate, une bibliothèque de mappage relationnelle-objet pour Java.
  • Votre projet doit être associé à l'une des bases de données suivantes :
    • DB2 for Linux, UNIX, and Windows
    • DB2 for z/OS
    • Informix Dynamic Server
Remarque : Vous ne pouvez pas exécuter une instruction EXPLAIN for SQL si l'instruction SQL contient des variables déclarées dans votre application. L'instruction peut contenir des variables associées au serveur de données, telles que les variables hôte DB2.

Pourquoi et quand exécuter cette tâche

L'exécution d'EXPLAIN pour les instructions SQL peut prendre beaucoup de temps. Plutôt que de sélectionner manuellement des instructions SQL et de remplir leur contenu EXPLAIN, vous pouvez exécuter EXPLAIN en arrière-plan.

Procédure

Pour rechercher des instructions SQL non performantes avec EXPLAIN :

Que faire ensuite

Pour trier les résultats, cliquez sur Afficher la vue en arborescence ou la vue de table pour afficher les résultats dans une table. Cliquez ensuite sur l'en-tête de la colonne que vous souhaitez trier.

Si les données EXPLAIN précisent que vous devriez modifier une instruction SQL de sorte que son exécution prenne moins de temps, vous pouvez optimiser la requête. Cette fonction est uniquement disponible pour les bases de données suivantes :
  • DB2 for Linux, UNIX, and Windows
  • DB2 for z/OS

Commentaires