Abfrageprofil
Sie können ein Abfrageprofil verwenden, um die Details einer Abfrageausführung zu visualisieren. Das Abfrageprofil hilft Ihnen bei der Behebung 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 die Speicherauslastung.
- 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 Sie müssen mindestens CAN MONITOR-Berechtigung für das SQL-Warehouse besitzen, das die Abfrage ausgeführt hat.
Anzeigen eines Abfrageprofils
Sie können das Abfrageprofil aus dem Abfrageverlauf mit den folgenden Schritten anzeigen:
Zeigen Sie den Abfrageverlauf an.
Klicken Sie auf den Namen einer Abfrage. Auf der rechten Seite des Bildschirms wird ein Abfragedetailsebereich angezeigt.
Klicken Sie auf Siehe Abfrageprofil.
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
.Zum Anzeigen des Abfrageprofils in der Graphansicht (Standardeinstellung) klicken Sie auf Graphansicht. Wenn Sie das Abfrageprofil als Struktur anzeigen möchten, klicken Sie auf Strukturansicht.
- Die Graph-Ansicht ist für die Visualisierung der Datenflüsse von einem Knoten zu einem anderen optimiert.
- Die Strukturansicht ist für die schnelle Suche nach Problemen mit der Leistung der Abfrage optimiert, so wie zum Identifizieren des am längsten laufenden Operators.
In der Diagrammansicht oder Der Strukturansicht können Sie oben auf der Seite auf eine der Registerkarten klicken, um Details zu den einzelnen Operatoren der Abfrage anzuzeigen.
- Aufgewendete Zeit: Aggregierte Zeit für jeden Vorgang. Die Gesamtzeit des Vorgangs wird ebenfalls bereitgestellt.
- Zeilen: Die Anzahl und Größe der Zeilen, die von den Einzelnen Abfrageoperatoren betroffen sind.
- Spitzenspeicher: Der Spitzenspeicher, den jeder der Abfrageoperatoren verbraucht hat.
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.
In der Diagrammansicht können Sie auf einen Operator klicken, um detaillierte Metriken anzuzeigen. In der Strukturansicht können Sie auf den Namen des Operators klicken, um die zugehörigen Details anzuzeigen.
Jeder Knoten wird mit seinem Vorgang beschriftet. Standardmäßig sind 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 auf oben auf der Seite und klicken Sie dann auf ausführlichen Modus aktivieren. 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
oderMAX
ausgewertet. - Filter: Die Eingabe wird nach einem Kriterium gefiltert, z. B. durch eine
WHERE
-Klausel, und eine Teilmenge von Zeilen wird zurückgegeben. - (Wiederverwendet) Exchange: Ein Shuffle- oder Broadcast-Exchange wird verwendet, um die Daten basierend auf der gewünschten Partitionierung unter den Clusterknoten neu zu verteilen.
- Erfassungsgrenze: Die Anzahl der zurückgegebenen Zeilen wurde durch Verwendung einer
LIMIT
-Anweisung eingeschränkt. - Take Ordered And Project: Die ersten N Zeilen des Abfrageergebnisses wurden zurückgegeben.
(Optional) Für Databricks SQL-Abfragen können Sie auch das Abfrageprofil in der Apache Spark UI anzeigen. Klicken Sie oben auf der Seite auf das Kebab-Menü, und klicken Sie dann auf "In Spark UI öffnen".
Klicken Sie zum Schließen des Abfrageprofils am unteren Rand des Bereichs auf "Abfrageprofil ausblenden".
Sie können auch auf das Abfrageprofil in den folgenden Teilen der Benutzeroberfläche zugreifen:
Aus dem SQL-Editor: Wenn die Abfrage abgeschlossen ist, 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. Klicken Sie auf Siehe Abfrageprofil.
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 serverlose Berechnung angefügt 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 Abfragedetailsbereich zu öffnen.
Über die Pipeline-Benutzeroberfläche von Delta Live Tables: Sie können auf den Abfrageverlauf und das Profil über die Registerkarte "Abfrageverlauf" in der Pipeline-Benutzeroberfläche zugreifen. Siehe Access-Abfrageverlauf für Delta Live Tables-Pipelines
Aus der Auftrags-UI: Dies gilt nur für serverlose Aufträge. Informationen zum Öffnen des Abfrageprofils aus der Auftrags-UI finden Sie unter Ausführen Ihres Azure Databricks-Auftrags mit serverloser Berechnung für Workflows .
Anzeigen von Details zum Abfrageprofil
Das Abfrageprofil listet die Operatoren der obersten Ebene der Abfrage in umgekehrter Reihenfolge auf, wobei der letzte Operator zuerst aufgeführt ist. Führen Sie die folgenden Schritte aus, um sich mit den verschiedenen Teilen des Abfrageprofils vertraut zu machen.
- Verwenden Sie die Schaltflächen "Zeit aufgewendet", "Zeilen" und "Spitzenspeicher " am oberen Rand der Abfrageprofilansicht, um die Metriken der obersten Ebene in jeder Kategorie anzuzeigen.
- Klicken Sie auf einen Operator, um Details zum Vorgang anzuzeigen, z. B. die Beschreibung und Metriken über die Dauer, den verbrauchten Arbeitsspeicher, die Anzahl und größe der zurückgegebenen Zeilen sowie alle verwendeten Gruppierungs- und Aggregationsausdrücke oder Ausgabeattribute.
- Klicken Sie zum Schließen von Operatordetails auf "Zurück zu Abfragedetails".
- Klicken Sie zum Schließen des Abfrageprofils unten im rechten Bereich auf "Abfrageprofil ausblenden".
Freigeben eines Abfrageprofils
So geben Sie ein Abfrageprofil für einen anderen Benutzer frei:
- Abfrageverlauf anzeigen.
- Klicken Sie auf den Namen der Abfrage.
- 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:
Zeigen Sie den Abfrageverlauf an.
Klicken Sie oben rechts auf die , und wählen Sie Abfrageprofil importieren (JSON) aus.
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.
Um das importierte Abfrageprofil zu schließen, klicken Sie oben auf der Seite auf X.
Nächste Schritte
- Erfahren Sie mehr über den Zugriff auf Abfragemetriken mithilfe der Abfrageverlaufs-API.
- Weitere Informationen zum Abfrageverlauf