Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
In diesem Artikel wird beschrieben, wie Ähnlichkeiten und Unterschiede zwischen tatsächlichen grafischen Ausführungsplänen mithilfe des Vergleichsfeatures für SQL Server Management Studio-Plan verglichen werden. Dieses Feature ist ab SQL Server Management Studio, Version 16 verfügbar.
Hinweis
Tatsächliche Ausführungspläne werden nach der Ausführung der Transact-SQL-Abfragen oder -Batches generiert. Aus diesem Fall enthält ein tatsächlicher Ausführungsplan Laufzeitinformationen, z. B. die tatsächliche Anzahl von Zeilen, Ressourcennutzungsmetriken und Laufzeitwarnungen (falls vorhanden). Weitere Informationen finden Sie unter Anzeigen eines tatsächlichen Ausführungsplans.
Die Möglichkeit zum Vergleichen von Plänen ist etwas, das Datenbankexperten aus Gründen der Problembehandlung tun müssen:
- Ermitteln, warum eine Abfrage oder ein Batch plötzlich langsam ausgeführt wird.
- Verstehen der Auswirkung einer Abfrageumschreibung.
- Beobachten, wie eine spezifische leistungssteigernde Änderung am Schemaentwurf (z.B. ein neuer Index) den Ausführungsplan effektiv geändert hat.
Die Menüoption " Planvergleich " ermöglicht einen parallelen Vergleich zweier unterschiedlicher Ausführungspläne, um die Identifizierung von Ähnlichkeiten und Änderungen zu erleichtern, die die verschiedenen Verhaltensweisen aus allen zuvor genannten Gründen erläutern. Diese Option kann Folgendes vergleichen:
- Zwei zuvor gespeicherten Ausführungsplandateien (Erweiterung SQLPLAN).
- Einen aktiven Ausführungsplan und einen zuvor gespeicherten Abfrageausführungsplan.
- Zwei ausgewählte Abfragepläne im Abfragespeicher.
Tipp
Der Planvergleich funktioniert mit allen .sqlplan-Dateien, auch mit älteren Versionen von SQL Server. Außerdem ermöglicht diese Option einen Offlinevergleich, sodass keine Verbindung mit einer SQL Server-Instanz erforderlich ist.
Wenn zwei Ausführungspläne verglichen werden, werden Bereiche des Plans, die im Wesentlichen die gleichen Aufgaben ausführen, in der gleichen Farbe und mit dem gleichen Muster hervorgehoben. Wenn Sie einen farbigen Bereich in einem Plan auswählen, wird der andere Plan auf dem entsprechenden Knoten in diesem Plan zentriert. Sie können weiterhin Operatoren und Knoten der Ausführungspläne ohne Übereinstimmung vergleichen, aber in diesem Fall müssen Sie die zu vergleichenden Operatoren manuell auswählen.
Wichtig
Nur Knoten, die die Form des Plans ändern, werden verwendet, um nach Ähnlichkeiten zu suchen. Daher kann es einen Knoten geben, der nicht farbig ist, in der Mitte von zwei Knoten, die sich im gleichen Unterabschnitt des Plans befinden. Der Mangel an Farbe in diesem Fall bedeutet, dass die Knoten beim Überprüfen, ob die Abschnitte gleich sind, nicht berücksichtigt wurden.
Vergleichen von Ausführungsplänen
Öffnen Sie eine zuvor gespeicherte Abfrageausführungsplandatei (
.sqlplan) mithilfe des Menüs " Datei", und wählen Sie " Datei öffnen" aus, oder ziehen Sie eine Plandatei in das Management Studio-Fenster. Wenn Sie soeben eine Abfrage ausgeführt und sich für die Anzeige ihres Ausführungsplans entschieden haben, navigieren Sie alternativ zur Registerkarte Ausführungsplan im Ergebnisbereich.Klicken Sie mit der rechten Maustaste in einen leeren Bereich des Ausführungsplans, und wählen Sie "Showplan vergleichen" aus.
Wählen Sie die zweite Abfrageplandatei aus, mit der der Vergleich durchgeführt werden soll. Die zweite Datei wird geöffnet, sodass Sie die Pläne vergleichen können.
Die verglichenen Pläne öffnen standardmäßig ein neues Fenster, standardmäßig ein fenster oben und eins unten. Die Standardauswahl ist das erste Vorkommen eines Operators oder Knotens, der in den verglichenen Plänen üblich ist, aber Unterschiede zwischen Plänen zeigt. Alle hervorgehobenen Operatoren und Knoten sind in beiden verglichenen Plänen vorhanden. Wenn Sie einen hervorgehobenen Operator in den oberen oder linken Plänen auswählen, wird automatisch der entsprechende Operator in den unteren oder rechten Plänen ausgewählt. Durch Auswählen des Stammknotenoperators in einem der verglichenen Pläne (dem
SELECTKnoten in der folgenden Abbildung) wird auch der entsprechende Stammknotenoperator im anderen Vergleichsplan ausgewählt.Tipp
Sie können die Anzeige des Ausführungsplanvergleichs nebeneinander umschalten, indem Sie mit der rechten Maustaste auf einen leeren Bereich des Ausführungsplans klicken und Teilerausrichtung umschalten auswählen.
Alle für Ausführungspläne verfügbaren Zoom- und Navigationsoptionen funktionieren im Planvergleichsmodus. Weitere Informationen finden Sie unter Anzeigen eines tatsächlichen Ausführungsplans.
Auf der rechten Seite öffnet sich ebenfalls ein Fenster mit zwei Eigenschaften im Rahmen der Standardauswahl. Eigenschaften, die in beiden verglichenen Operatoren vorhanden sind, jedoch Unterschiede aufweisen, werden dem nicht gleichheitszeichen (≠) vorangestellt, um die Identifizierung zu erleichtern.
Das Vergleichsnavigationsfenster Showplananalyse wird ebenfalls im unteren Bereich geöffnet. Es stehen drei Registerkarten zur Verfügung:
Auf der Registerkarte Anweisungsoptionen ist die Standardauswahl Ähnliche Vorgänge hervorheben, und der gleiche hervorgehobene Operator bzw. Knoten in verglichenen Plänen weist die gleiche Farbe und dasselbe Linienmuster auf. Navigieren Sie zwischen ähnlichen Bereichen im Vergleich zu Plänen, indem Sie ein Kalkmuster auswählen. Sie können auch Unterschiede in den Plänen anstelle von Ähnlichkeiten hervorheben, indem Sie Vorgänge hervorheben, die nicht mit ähnlichen Segmenten übereinstimmen auswählen.
Hinweis
Standardmäßig werden Datenbanknamen ignoriert, wenn Pläne verglichen werden, um einen Vergleich von Plänen zu ermöglichen, die für Datenbanken mit unterschiedlichen Namen erfasst wurden, aber dasselbe Schema verwenden. Beispiel: Beim Vergleichen von Plänen aus Datenbanken
ProdDBundTestDB. Dieses Verhalten kann mit der Option Datenbanknamen beim Vergleichen von Operatoren ignorieren geändert werden.Die Registerkarte Mehrere Anweisungen ist beim Vergleichen von Plänen mit mehreren Anweisungen nützlich, weil sie erlaubt, dass das richtige Anweisungspaar verglichen wird.
Auf der Registerkarte "Szenarien " finden Sie eine automatisierte Analyse einiger der relevantesten Aspekte, um zu untersuchen, was sich auf Die Unterschiede bei der Kardinalitätsschätzung (SQL Server) bei verglichenen Plänen bezieht. Für jeden aufgelisteten Operator im linken Bereich zeigt der rechte Bereich Details zum Szenario im Hier auswählen, um weitere Informationen zu diesem Szenariolink zu erhalten, und mögliche Gründe, um dieses Szenario zu erläutern.
Wenn dieses Fenster geschlossen ist, klicken Sie mit der rechten Maustaste auf einen leeren Bereich eines verglichenen Plans, und wählen Sie " Optionen zum Vergleichen von Showplan" aus, um es erneut zu öffnen.
Vergleichen von Ausführungsplänen im Abfragespeicher
Identifizieren Sie im Abfragespeicher eine Abfrage mit mehreren Ausführungsplänen. Weitere Informationen zu Abfragespeicherszenarien finden Sie unter Verwendungsszenarien für den Abfragespeicher.
Verwenden Sie eine Kombination aus der UMSCHALTTASTE und der Maus, um zwei Pläne für dieselbe Abfrage auszuwählen.
Verwenden Sie die Schaltfläche Compare the plans for the select query in a separate window (Pläne für die ausgewählte Abfrage in einem separaten Fenster vergleichen), um den Planvergleich zu starten. Führen Sie dann die Schritte 4 bis 6 von So vergleichen Sie Ausführungspläne aus.