Génération et exécution des recommandations pour la collecte de statistiques concernant les objets de base de données qui se trouvent dans le chemin d'accès d'une instruction SQL

L'assistant Statistiques recommande les commandes RUNSTATS que vous pouvez utiliser pour collecter ou réparer des statistiques. Les statistiques collectées peuvent aider l'optimiseur à choisir un chemin d'accès plus efficace. Toutefois, l'optimiseur peut choisir le même chemin d'accès, même après que vous avez collecté les statistiques recommandées.

Avant de commencer

Pourquoi et quand exécuter cette tâche

Il existe de nombreuses situations dans lesquelles les statistiques sont périmées ou en conflit les unes avec les autres. Il existe d'autres situations dans lesquelles les statistiques peuvent ne pas avoir été collectées pour une table ou un index. La collecte de statistiques de groupes de colonnes peut être chère. L'assistant Statistiques peut décider si les statistiques sont nécessaires, afin que vous ne perdiez pas de temps et de ressources dans la collecte de statistiques non nécessaires.

Procédure

Pour obtenir et exécuter des recommandations pour la collecte de statistiques :

  1. 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.
  2. Sélectionnez l'une des instructions capturées et cliquez sur le bouton Appeler assistants et outils. La page Exécuter tous les assistants et outils d'analyse pour une requête unique de la section Appeler s'ouvre.
  3. Si vous avez besoin de définir le schéma pour utiliser les objets non qualifiés référencés par l'instruction SQL, ou (si l'instruction s'exécute sur DB2 for z/OS) changer l'ID SQL, indiquez ces valeurs dans les zones Schéma et ID SQL au-dessus de l'instruction SQL sur cette page. Pour plus d'informations sur la définition de valeurs par défaut globales pour les schémas et ID SQL, voir Définition du schéma pour l'utilisation des objets non qualifiés et/ou de l'ID SQL.
  4. Facultatif : Modifiez les valeurs des options pour l'assistant de statistiques. Cliquez sur Définir les options de l'assistant dans la partir gauche de la section Appeler. Ensuite, cliquez sur l'onglet Assistant Statistiques pour afficher les options que vous pouvez modifier. Une fois que vous avez terminé, dans la partie gauche de la section Appeler, cliquez sur Exécutez les assistants et outils d'analyse pour revenir à la page Exécuter tous les assistants et outils d'analyse pour une requête unique.
  5. Cliquez sur le bouton Sélectionner les éléments à exécuter.
  6. Dans la fenêtre Sélectionner des activités, cochez la case Statistiques. Puis, cliquez sur OK. Après que l'assistant de statistiques s'est exécuté, la page Consulter les recommandations de l'assistant de la section Consulter s'ouvre. La section Récapitulatif affiche s'il y a des recommandations pour corriger les statistiques.
    Elevé
    Les recommandations de ce type indiquent qu'il manque des statistiques importantes, que des statistiques sont obsolètes ou que des conflits existent entre les statistiques.
    Maintenance
    Les recommandations de ce type ont une priorité basse et indiquent que les statistiques de catalogue sont complètes et exactes. La recommandation fournit un travail RUNSTATS que vous pouvez inclure régulièrement dans votre cycle de maintenance pour maintenir l'état de santé des statistiques pertinentes.
  7. Dans la page Consulter les recommandations de l'assistant Requête unique, cliquez deux fois sur la ligne Statistiques dans la table Récapitulatif.
  8. Pour DB2 for z/OS uniquement : choisissez d'exécuter la version de réparation ou la version complète des commandes RUNSTATS recommandées.
    Version de réparation
    Cette version des commandes RUNSTATS répare les problèmes trouvés par l'assistant Statistiques. Exécutez cette version pour conserver l'heure et les ressources de l'UC.
    Version complète
    Cette version des commandes RUNSTATS collecte un ensemble complet de statistiques pour les objets liés à l'instruction SQL. Lors du processus de collecte, ces commandes réparent tous les problèmes trouvés par l'assistant Statistiques.
  9. Dans la section Statistics Advisor Report, consultez les éléments trouvés concernant les statistiques pour les tables référencées. Il existe deux versions différentes du rapport, que vous pouvez sélectionner en cliquant sur les icônes à l'extrémité gauche de la barre d'outils.
    Rapport récapitulatif
    Cliquez sur l'icône Rapport récapitulatif (première icône dans la barre d'outils au-dessus des commandes RUNSTATS) pour afficher uniquement les problèmes trouvés par l'assistant Statistiques et que les commandes RUNSTATS réparent.
    Rapport détaillé
    Cliquez sur l'icône Rapport détaillé (deuxième icône dans la barre d'outils au-dessus des commandes RUNSTATS) pour afficher un rapport de toutes les statistiques pour les objets référencés par l'instruction SQL. Le rapport présente les statistiques problématiques ainsi que les statistiques non problématiques.
  10. Consultez la section Conflicts Detail pour savoir si l'assistant a trouvé des conflits dans les statistiques.
  11. Sélectionnez l'une des options suivantes :
    Remarque : Avant de sélectionner les options d'exécution des commandes RUNSTATS, vérifiez que vous disposez des droits et privilèges appropriés sur le serveur de données.
    Exécution
    Exécute toutes les commandes RUNSTATS répertoriées.
    Exécuter et sauvegarder l'historique des commandes RUNSTATS recommandées
    Exécute toutes les commandes RUNSTATS répertoriées et les enregistre pour référence ultérieure.
    Exécuter et sauvegarder dans les profils de statistiques
    Exécute toutes les commandes RUNSTATS répertoriées. Chaque commande génère et stocke un profil de statistiques spécifique dans les tables du catalogue système.
    Pour DB2 for z/OS : Extraire les commandes RUNSTATS du serveur de base de données
    Affiche les commandes RUNSTATS que l'assistant Statistiques a précédemment recommandées pour les objets référencés par l'instruction SQL, si vous avez choisi de sauvegarder ces recommandations précédentes dans l'historique des commandes RUNSTATS recommandées.
    Pour DB2 for Linux, UNIX et Windows : Extraire les profils de statistiques
    Récupère les commandes RUNSTATS qui sont stockées dans les profils de statistiques pour les tables en cours. Ces commandes s'affichent à droite des commandes recommandées en cours.
    Pour DB2 for z/OS : Sauvegarder dans l'Historique des commandes RUNSTATS recommandées
    Sauvegarde les commandes RUNSTATS répertoriées dans la base de données. Si vous ajustez la même instruction SQL ou une autre instruction qui référence les mêmes objets, vous pouvez afficher les commandes RUNSTATS que l'assistant Statistiques a recommandées précédemment. Vous pouvez ensuite comparer les recommandations en cours avec les recommandations précédentes.
    Pour DB2 for Linux, UNIX et Windows : Sauvegarder dans les profils de statistiques
    Sauvegarde les paramètres pour toutes les commandes RUNSTATS répertoriées dans les profils de statistiques pour les tables auxquelles les commandes sont dédiées.
    DB2 10 for z/OS uniquement : créez un profil RUNSTATS pour les tables référencées
    Sauvegarde les options dans la commandes RUNSTATS sélectionnée en tant que profil RUNSTATS pour les tables correspondantes. Un profil RUNSTATS est un ensemble d'options sauvegardées pour la fonctionnalité RUNSTATS qui s'appliquent à une table particulière. DB2 utilise les profils RUNSTATS pour la maintenance des statistiques autonomes. Vous pouvez également utiliser les profils RUNSTATS pour appeler rapidement la fonctionnalité RUNSTATS avec un ensemble d'options prédéfini.
    DB2 10 for z/OS uniquement : mettez à jour le profil RUNSTATS pour les tables référencées
    Mettez à jour le profil RUNSTATS en cours pour les tables référencées avec les options dans les commandes RUNSTATS sélectionnées. Un profil RUNSTATS est un ensemble d'options sauvegardées pour la fonctionnalité RUNSTATS qui s'appliquent à une table particulière. DB2 utilise les profils RUNSTATS pour la maintenance des statistiques autonomes. Vous pouvez également utiliser les profils RUNSTATS pour appeler rapidement la fonctionnalité RUNSTATS avec un ensemble d'options prédéfini.

Que faire ensuite

Avant de passer à d'autres assistants, exécutez une nouvelle fois l'assistant Statistiques et collectez les statistiques recommandées jusqu'à ce que vous ayez résolu toutes les recommandations élevées. Les autres assistants de requête unique s'appuient sur des statistiques exactes pour faire des recommandations. Vous souhaiterez peut-être également générer un nouveau graphique de plan d'accès et le comparer au graphique de plan d'accès initial pour voir si le chemin d'accès a changé.

Pour exécuter à nouveau l'assistant Statistiques, procédez comme suit :

  1. Assurez-vous que la mémoire cache locale du catalogue système pour la base de données ou le sous-système connecté est à jour.
  2. Cliquez sur l'onglet Appeler dans la partie gauche de l'assistant de flux de travaux.
  3. Sur la page Exécuter les assistants Requête unique et les outils, sélectionnez l'option Réexpliciter la requête.
  4. Cliquez sur le bouton Sélectionner les éléments à exécuter.
  5. Dans la fenêtre Sélectionner des activités, sélectionnez l'option Statistiques et cliquez sur OK.

Commentaires