Visionneuse de plans d’exécution SQL Server

Visualisez l’arbre des opérateurs et les problèmes d’un plan SQL Server, classés par importance.

Fonctionne en local · aucun envoi
ShowPlan XMLestimated or actual · paste or drop a .sqlplan

Ce que fait l’outil

Collez du ShowPlan XML ou déposez un fichier .sqlplan. Chaque instruction est dessinée sous forme d’arbre d’opérateurs, de droite à gauche comme dans SSMS ou de haut en bas. Chaque opérateur affiche sa part du coût estimé, l’objet qu’il lit et ses nombres de lignes. Dans les plans réels, les lignes réelles s’affichent à côté de l’estimation, et les estimations erronées d’un facteur 10 ou plus sont signalées. L’épaisseur des flèches suit le nombre de lignes.

Constats

La liste Constats présente d’abord les problèmes les plus probables :

  • Conversions implicites (CONVERT_IMPLICIT) qui empêchent un Index Seek ou faussent les estimations
  • Key lookups et RID lookups, avec les colonnes à ajouter en INCLUDE pour les supprimer
  • Parcours qui lisent beaucoup de lignes pour n’en renvoyer que quelques-unes
  • Débordements dans tempdb et avertissements d’allocation mémoire
  • Index manquants, avec une instruction CREATE NONCLUSTERED INDEX ... INCLUDE (...) prête à l’emploi et l’impact estimé par l’optimiseur
  • Parameter sniffing : valeurs des paramètres à la compilation et à l’exécution
  • Erreurs d’estimation de lignes, signalées là où elles naissent plutôt que sur chaque opérateur au-dessus
  • Expirations de l’optimiseur, jointures sans prédicat, statistiques manquantes et principales attentes

Cliquez sur un constat pour atteindre son opérateur.

Mode d’emploi

  1. Dans SSMS, faites un clic droit sur le plan et choisissez Afficher le XML du plan d’exécution, ou enregistrez-le en .sqlplan.
  2. Collez-le ou déposez-le ici. Utilisez Ajuster, les boutons de zoom ou Ctrl+molette, et faites glisser pour vous déplacer.
  3. Cliquez sur un opérateur pour voir toutes ses propriétés : prédicats, clés de recherche, colonnes de sortie, estimations d’E/S et de CPU, exécutions et lectures réelles.

Confidentialité

Le plan est analysé dans votre navigateur et n’est jamais envoyé. Comme il contient le texte de votre requête et les valeurs des paramètres, il reste uniquement dans le stockage local jusqu’à ce que vous l’effaciez.