Optimisation d'instructions SQL à l'aide d'InfoSphere Optim Query Tuner

IBM® InfoSphere Optim Query Tuner permet d'optimiser manuellement les instructions SQL dans les applications Java qui utilisent pureQuery.

Avant de commencer

InfoSphere Optim Query Tuner fournit des recommandations pour modifier une instruction SQL afin de raccourcir son temps d'exécution.

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
  • Si votre projet est associé à DB2 for Linux, UNIX, and Windows :
    • IBM InfoSphere Optim Query Tuner for DB2 for Linux, UNIX, and Windows doit être installé dans le même groupe de packages qu'IBM Data Studio.
    • IBM InfoSphere Optim Query Tuner for DB2 for Linux, UNIX and Windows doit être activé sur le serveur de données.
    • Le serveur de données doit être configuré pour le client d'optimisation de requêtes.
  • Si votre projet est associé à DB2 for z/OS :
    • IBM InfoSphere Optim Query Tuner for DB2 for z/OS doit être installé dans le même groupe de packages qu'IBM Data Studio.
    • IBM InfoSphere Optim Query Tuner for DB2 for z/OS doit être activé sur le serveur de données.
    • Le serveur de données doit être configuré pour le client d'optimisation de requêtes
Remarque : Vous ne pouvez pas optimiser une instruction 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.

Toutefois, après avoir lié ou déployé l'application, vous pouvez capturer l'instruction SQL à partir d'un package DB2 ou à partir d'un cache d'instruction dynamique, puis l'optimiser. Vous pouvez utiliser les fonctions d'optimisation de requête ou IBM InfoSphere Optim Performance Manager pour capturer l'instruction une fois l'application déployée vers un environnement de test ou de production.

Pourquoi et quand exécuter cette tâche

Vous optimisez chaque instruction SQL manuellement via un processus itératif dans l'éditeur Query Tuner. Si votre application Java contient un grand nombre d'instructions SQL, vous pouvez améliorer votre productivité en sachant quelles instructions SQL optimiser. Vous pouvez utiliser des données EXPLAIN dans la vue Structure SQL pour identifier les instructions SQL non performantes qui bénéficieraient le plus de l'optimisation.

Vous pouvez ouvrir l'éditeur Query Tuner à partir de la vue Structure SQL, de l'éditeur Java ou de l'éditeur pureQueryXML.

Procédure

Pour utiliser l'éditeur Query Tuner afin d'optimiser les instructions SQL à l'aide d'InfoSphere Optim Query Tuner :

  1. Facultatif : Recherchez des instructions SQL non performantes avec EXPLAIN.
  2. Sélectionnez l'instruction SQL à optimiser et ouvrez l'éditeur Query Tuner.
    Option Description
    Dans la vue Structure SQL :
    • Cliquez avec le bouton droit de la souris sur l'instruction SQL, puis cliquez sur Ouvrir Query Tuner.
    Dans l'éditeur Java :
    • Cliquez avec le bouton droit de la souris sur l'instruction SQL, puis cliquez sur Ouvrir Query Tuner.
    Dans l'éditeur pureQueryXML (disponible lorsque la prise en charge pureQuery est activée) :
    • Cliquez avec le bouton droit de la souris sur l'instruction SQL, puis cliquez sur Ouvrir Query Tuner.
    Conseil : Vous pouvez accéder directement aux recommandations en cliquant avec le bouton droit de la souris sur une instruction SQL à l'un de ces trois emplacements et en sélectionnant Obtenir le rapport Query Tuner.
    Pour obtenir de l'aide sur l'utilisation de l'éditeur, voir l'éditeur Query Tuner.
  3. Copiez l'instruction SQL optimisée puis fermez l'éditeur Query Tuner.
  4. Mettez à jour l'instruction SQL sur le plan de travail.
    Si vous avez ouvert l'éditeur à partir de Effectuez les étapes suivantes
    La vue Structure SQL :
    1. Revenez à l'éditeur Java.
    2. Sélectionnez l'instruction SQL complète que vous avez optimisée, puis collez l'instruction SQL copiée.
    L'éditeur Java :
    • Sélectionnez l'instruction SQL complète que vous avez optimisée, puis collez l'instruction SQL copiée.
    L'éditeur pureQueryXML (disponible lorsque la prise en charge pureQuery est activée) :
    • Cliquez avec le bouton droit de la souris sur l'instruction que vous avez optimisée, cliquez sur Editer l'instruction, puis collez l'instruction SQL copiée.

Que faire ensuite

Répétez le processus pour chaque instruction SQL à optimiser.

Commentaires