Überblick über die Analyse von Ausführungsplänen - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Überblick über die Analyse von Ausführungsplänen

Sie können das Amazon RDS Performance Insights Insights-Dashboard verwenden, um zu erfahren, welche Pläne am meisten zur DB-Auslastung für Oracle- und SQL Server-DB-Instances beitragen.

Beispielsweise könnten die Top-SQL-Anweisungen zu einem bestimmten Zeitpunkt die in der folgenden Tabelle gezeigten Pläne verwenden:

Haupt-SQL Plan

SELECT SUM(amount_sold) FROM sales WHERE prod_id = 10

Plan A

SELECT SUM(amount_sold) FROM sales WHERE prod_id = 521

Plan B

SELECT SUM(s_total) FROM sales WHERE region = 10

Plan A

SELECT * FROM emp WHERE emp_id = 1000

Plan C

SELECT SUM(amount_sold) FROM sales WHERE prod_id = 72

Plan A

Mit der Planfunktion von Performance Insights können Sie Folgendes tun:

  • herausfinden, welche Pläne von den Top-SQL-Abfragen verwendet werden

    Sie könnten beispielsweise herausfinden, dass der Großteil der DB-Last durch Abfragen generiert wird, die Plan A und Plan B verwenden, und nur ein kleiner Prozentsatz Plan C verwendet.

  • verschiedene Pläne für dieselbe Abfrage vergleichen

    Im vorhergehenden Beispiel sind drei Abfragen mit Ausnahme der Produkt-ID identisch. Zwei Abfragen verwenden Plan A, aber eine Abfrage verwendet Plan B. Um den Unterschied zwischen den beiden Plänen zu erkennen, können Sie Performance Insights verwenden.

  • herausfinden, wann eine Abfrage auf einen neuen Plan umgeschaltet hat

    Sie könnten sehen, dass eine Abfrage Plan A verwendet hat und dann zu einem bestimmten Zeitpunkt zu Plan B gewechselt ist. Gab es zu diesem Zeitpunkt eine Änderung in der Datenbank? Wenn beispielsweise eine Tabelle leer ist, kann der Optimierer einen vollständigen Tabellenscan auswählen. Wenn die Tabelle mit einer Million Zeilen geladen wird, wechselt der Optimierer möglicherweise zu einem Indexbereichs-Scan.

  • einen Drilldown zu den einzelnen Schritten eines Plans mit den höchsten Kosten durchführen

    Beispielsweise könnte die Abfrage für eine lang andauernde Abfrage eine fehlende Join-Bedingung in einem Equi-Join anzeigen. Diese fehlende Bedingung erzwingt ein kartesisches Join, das alle Zeilen von zwei Tabellen verbindet.

Sie können die oben genannten Aufgaben mithilfe der Planerfassungsfunktion von Performance Insights ausführen. So wie Sie Abfragen nach Warteereignissen und Top-SQL aufteilen können, können Sie sie auch nach der Plandimension segmentieren.