Teilen über


Abfrageprofil

Sie können ein Abfrageprofil verwenden, um die Details einer Abfrageausführung zu visualisieren. Das Abfrageprofil hilft Ihnen bei der Behandlung von Leistungsengpässen während der Ausführung der Abfrage. Zum Beispiel:

  • Sie können jeden Abfrageoperator und zugehörige Metriken visualisieren, z. B. die aufgewendete Zeit, die Anzahl der verarbeiteten Zeilen, die verarbeiteten Zeilen und den Arbeitsspeicherverbrauch.
  • Sie können den langsamsten Teil der Abfrageausführung auf einen Blick erkennen und die Auswirkungen von Änderungen an der Abfrage beurteilen.
  • Sie können häufige Fehler in SQL-Anweisungen entdecken und beheben, z. B. ausufernde Joins oder vollständige Tabellenscans.

Anforderungen

Um ein Abfrageprofil anzuzeigen, müssen Sie entweder der Besitzer der Abfrage sein oder mindestens über die Berechtigung „Kann überwachen“ für das SQL-Warehouse verfügen, das die Abfrage ausgeführt hat.

Anzeigen eines Abfrageprofils

Sie können das Abfrageprofil aus dem Abfrageverlauf mit den folgenden Schritten anzeigen:

  1. Klicken Sie auf der Seitenleiste auf Symbol „Verlauf“.Abfrageverlauf.

  2. Wählen Sie den Namen einer Abfrage. Auf der rechten Seite des Bildschirms wird ein Abfragedetailbereich angezeigt.

    Einfache Ansicht der Abfrageausführungszusammenfassung

    Die Abfragezusammenfassung umfasst:

    • Abfragestatus: Die Abfrage wird mit dem aktuellen Status markiert: In die Warteschlange eingereiht, ausgeführt, abgeschlossen, fehlgeschlagen oder abgebrochen.
    • Benutzer- und Berechnungsdetails: Hier können Sie den Benutzernamen, den Computetyp und die Laufzeitdetails für diesen Abfragevorgang einsehen.
    • ID: Dies ist der universal eindeutige Bezeichner (UUID), der der angegebenen Abfrageausführung zugeordnet ist.
    • Query-Anweisung: Dieser Abschnitt enthält die vollständige Abfrage-Anweisung. Wenn die Abfrage zu lang ist, um in der Vorschau angezeigt zu werden, klicken Sie auf ... weitere Zeilen zum Anzeigen des Volltexts.
    • Abfragemetriken: Beliebte Metriken für die Abfrageanalyse werden unter dem Abfragetext angezeigt. Die Filtersymbole, die mit einigen Metriken angezeigt werden, geben den Prozentsatz der daten an, die beim Scannen gekürzt wurden.
    • Siehe Abfrageprofil: In dieser Zusammenfassung wird eine Vorschau des Abfrageprofils des gerichteten azyklischen Graphen (DAG) angezeigt. Dies kann hilfreich sein, um die Komplexität und den Ausführungsfluss von Abfragen schnell zu schätzen. Klicken Sie auf "Abfrageprofil anzeigen ", um die detaillierte DAG zu öffnen.
    • Sehen Sie sich die längsten Operatoren für diese Abfrage an: Klicken Sie auf diese Schaltfläche, um den Bereich " Oberste Operatoren " zu öffnen. In diesem Panel werden die am längsten laufenden Operatoren in der Abfrage angezeigt.
    • Abfrage der Gesamtbetrachtungszeit: Die gesamte verstrichene Zeit zwischen dem Beginn der Planung und dem Ende der Abfrageausführung wird als Zusammenfassung bereitgestellt. Unter der Zusammenfassung wird eine detaillierte Aufschlüsselung der Terminplanung, Abfrageoptimierung und Datei pruning sowie die Ausführungszeit angezeigt.
    • Abfragequelle: Klicken Sie auf den Namen des aufgelisteten Objekts, um zur Abfragequelle zu wechseln.
    • Aggregierte Vorgangszeit: Zeigen Sie die kombinierte Zeit an, die zum Ausführen der Abfrage für alle Kerne aller Knoten benötigt wurde. Sie kann deutlich länger als die Wanduhrdauer sein, wenn mehrere Aufgaben parallel ausgeführt werden. Sie kann kürzer sein als die Wanduhrdauer, wenn auf verfügbare Knoten gewartet wurde.
    • Eingabe/Ausgabe (E/A): Zeigen Sie Details zu den Daten an, die während der Abfrageausführung gelesen und geschrieben wurden.
  3. Wählen Sie Siehe Abfrageprofil aus. Ein Detailbereich wird auf der rechten Seite des Bildschirms geöffnet.

    Details des Abfrageprofils.

    Hinweis

    Wenn das Abfrageprofil nicht verfügbar ist, steht für diese Abfrage kein Profil zur Verfügung. Für Abfragen, die über den Abfragecache ausgeführt werden, ist kein Abfrageprofil verfügbar. Um den Abfragecache zu umgehen, nehmen Sie eine geringfügige Änderung an der Abfrage vor, z. B. das Ändern oder Entfernen von LIMIT.

Abfrageprofildetails anzeigen

Das detaillierte Abfrageprofil enthält Zusammenfassungsmetriken auf der linken Seite des Panels und eine Diagrammansicht von Operatoren auf der rechten Seite.

Abfragemetriken analysieren

Auf der linken Seite des Abfrageprofils befinden sich die folgenden Registerkarten:

  1. Detailsymbol Details: Öffnet das Panel "Details", in dem die Metriken der Abfragezusammenfassung angezeigt werden.

  2. Top-Operatoren-Symbol Top-Operatoren: Öffnet das Top-Operatoren-Panel, das die teuersten Operatoren zeigt, die in Ihrer Abfrage verwendet werden. Dies kann hilfreich sein, um Optimierungsmöglichkeiten zu identifizieren.

  3. Abfragetextsymbol Abfragetext: Öffnet den Abfragetextbereich , in dem der Volltext der Abfrage angezeigt wird.

Hinweis

Einige Nicht-Photon-Vorgänge werden als Gruppe ausgeführt und verwenden gemeinsame Metriken. In diesem Fall haben alle Vorgänge denselben Wert wie der übergeordnete Operator für eine angegebene Metrik.

Entdecken Sie die DAG

Die rechte Hälfte des Abfrageprofils zeigt das gerichtete azyklische Diagramm (DAG) der Abfrage an. In der Diagrammansicht werden Metriken wie Zeitaufwand, Speicherspitze und Zeilen angezeigt. Klicken Sie auf jede Metrik, um die angezeigte Berichtsmetrik zu ändern.

Sie können auf folgende Weise mit der DAG interagieren:

  • Verwenden Sie die Suchleiste, um verschiedene Operatoren oder Spalten hervorzuheben.
  • Vergrößern oder verkleineren Sie den Fokus auf verschiedene Teile der DAG.
  • Klicken Sie auf Operatoren, um detaillierte Metriken und Beschreibungen anzuzeigen. Ein Bereich auf der rechten Seite des Diagramms zeigt Vorgangsdetails an.

Für Databricks-SQL-Abfragen können Sie auch das Abfrageprofil in der Spark-Benutzeroberfläche anzeigen. Klicken Sie auf das Kebab-Menüsymbol. Kebab-Menü am oberen Rand der Seite, und klicken Sie dann auf "In Spark UI öffnen".

Standardmäßig sind die Metriken für einige Vorgänge ausgeblendet. Es ist unwahrscheinlich, dass diese Vorgänge die Ursache von Leistungsengpässen sind. Wenn Sie Informationen zu allen Vorgängen und zusätzliche Metriken sehen möchten, klicken Sie oben auf der Seite auf Kebab-Menü-Symbol, und klicken Sie dann auf Ausführlichen Modus aktivieren.

Allgemeine Vorgänge

Die häufigsten Vorgänge sind:

  • Überprüfung: Daten wurden aus einer Datenquelle gelesen und als Zeilen ausgegeben.
  • Verknüpfung: Zeilen aus mehreren Beziehungen wurden zu einem einzigen Satz von Zeilen zusammengefasst (verschachtelt).
  • Vereinigung: Zeilen aus mehreren Beziehungen, die dasselbe Schema verwenden, wurden zu einem einzigen Satz von Zeilen verkettet.
  • Shuffle: Daten wurden neu verteilt oder neu partitioniert. Shuffle-Vorgänge sind ressourcenintensiv, da sie Daten zwischen Executors im Cluster verschieben.
  • Hash/Sortierung: Die Zeilen wurden nach einem Schlüssel gruppiert und innerhalb jeder Gruppe mit einer Aggregatfunktion wie SUM, COUNT oder MAX ausgewertet.
  • Filter: Die Eingabe wird nach einem Kriterium gefiltert, z. B. durch eine WHERE-Klausel, und eine Teilmenge von Zeilen wird zurückgegeben.

Freigeben eines Abfrageprofils

So geben Sie ein Abfrageprofil für einen anderen Benutzer frei:

  1. Zeigen Sie den Abfrageverlauf an.
  2. Klicken Sie auf den Namen der Abfrage.
  3. Zum Freigeben der Abfrage haben Sie zwei Möglichkeiten:
    • Wenn der andere Benutzer die Berechtigung KANN VERWALTEN für die Abfrage hat, können Sie die URL für das Abfrageprofil für ihn freigeben. Klicken Sie auf Freigeben. Die URL wird in die Zwischenablage kopiert.
    • Andernfalls können Sie das Abfrageprofil als JSON-Objekt herunterladen, wenn der andere Benutzer nicht über die Berechtigung KANN VERWALTEN verfügt oder kein Mitglied des Arbeitsbereichs ist. Herunterladen. Die JSON-Datei wird auf Ihr lokales System heruntergeladen.

Freigeben eines Abfrageprofils

So importieren Sie die JSON-Datei für ein Abfrageprofil:

  1. Zeigen Sie den Abfrageverlauf an.

  2. Klicken Sie auf das Kebab-Menüsymbol. Wählen Sie oben rechts das Kebab-Menüsymbol aus, und wählen Sie "Abfrageprofil importieren" (JSON) aus.

  3. Wählen Sie im Dateibrowser die JSON-Datei aus, die für Sie freigegeben wurde, und klicken Sie auf Öffnen. Die JSON-Datei wird hochgeladen, und das Abfrageprofil wird angezeigt.

    Wenn Sie ein Abfrageprofil importieren, wird es dynamisch in Ihre Browsersitzung geladen und bleibt nicht in Ihrem Arbeitsbereich erhalten. Sie müssen es jedes Mal neu importieren, wenn Sie es anzeigen möchten.

  4. Um das importierte Abfrageprofil zu schließen, klicken Sie oben auf der Seite auf X.

Zugreifen auf das Abfrageprofil

Sie können in den folgenden Teilen der Benutzeroberfläche auch auf das Abfrageprofil zugreifen:

  • Aus dem SQL-Editor: Während und nach der Abfrageausführung zeigt ein Link am unteren Rand der Seite die verstrichene Zeit und die Anzahl der zurückgegebenen Zeilen an. Klicken Sie auf diesen Link, um den Bereich mit den Abfragedetails zu öffnen. Wählen Sie Siehe Abfrageprofil aus.

    Öffnen des Abfrageverlaufs aus der Editorausgabe

    Hinweis

    Wenn der neue SQL-Editor aktiviert ist (öffentliche Vorschau), wird Ihr Link wie in einem Notizbuch angezeigt.

  • Aus einem Notizbuch: Wenn Ihr Notizbuch an ein SQL-Warehouse oder serverloses Computing angehängt ist, können Sie über den Link unter der Zelle, die die Abfrage enthält, auf das Abfrageprofil zugreifen. Klicken Sie auf Leistung anzeigen , um den Ausführungsverlauf zu öffnen. Klicken Sie auf eine Anweisung, um den Bereich Abfragedetails zu öffnen.

    Ausgabe des Abfrageverlauf-Notebooks öffnen

  • Über die Benutzeroberfläche von Lakeflow Spark Declarative Pipelines: Sie können auf den Abfrageverlauf und das Profil über die Registerkarte "Abfrageverlauf " in der Pipeline-Benutzeroberfläche zugreifen. Siehe Access-Abfrageverlauf für Pipelines.

  • Über die Auftrags-UI: Sie können auf Abfrageprofile für Aufträge zugreifen, die auf SQL-Lagerhäusern und serverlosem Berechnen ausgeführt werden. Für Jobs, die auf serverlosem Compute ausgeführt werden, sehen Sie sich Abfragedetails für Jobläufe an, um zu erfahren, wie Sie in der Auftrags-Benutzeroberfläche (UI) Abfragedetails anzeigen können.

Nächste Schritte