Aktivieren von Scanstatistiken für Abfragen
Wichtig
Azure HDInsight auf AKS wurde am 31. Januar 2025 eingestellt. Erfahren Sie mehr mit dieser Ankündigung.
Sie müssen Ihre Workloads zu Microsoft Fabric oder ein gleichwertiges Azure-Produkt migrieren, um eine abrupte Beendigung Ihrer Workloads zu vermeiden.
Wichtig
Dieses Feature befindet sich derzeit in der Vorschau. Die zusätzlichen Nutzungsbedingungen für Microsoft Azure Previews weitere rechtliche Bestimmungen enthalten, die für Azure-Features gelten, die in der Betaversion, in der Vorschau oder auf andere Weise noch nicht in die allgemeine Verfügbarkeit veröffentlicht werden. Informationen zu dieser spezifischen Vorschau finden Sie unter Azure HDInsight auf AKS-Vorschauinformationen. Für Fragen oder Funktionsvorschläge senden Sie bitte eine Anfrage an AskHDInsight mit den Details und folgen Sie uns für weitere Updates zur Azure HDInsight Community.
Häufig sind Datenteams erforderlich, um die Leistung zu untersuchen oder Abfragen zu optimieren, um die Ressourcenauslastung zu verbessern oder geschäftliche Anforderungen zu erfüllen.
In Trino für HDInsight auf AKS wurde eine neue Funktion hinzugefügt, die es Benutzern ermöglicht, Scanstatistiken für jeden Connector zu erfassen. Diese Funktion bietet tiefere Einblicke in das Leistungsprofil von Abfragen, die über die von Trino erstellten Statistiken hinausgehen.
Sie können dieses Feature sowohl mit der Sitzungseigenschaft collect_raw_scan_statistics
als auch mit dem folgenden Trino-Befehl aktivieren:
SET SESSION collect_raw_scan_statistics=true
Sobald die Funktion aktiviert ist, verfügen Quelloperatoren in der Abfrage, wie TableScanOperator
, ScanFilterAndProject
etc., über Statistiken zu Datenscans. Die Granularität bezieht sich auf jede einzelne Operatorinstanz in einer Pipeline.
Tipp
Scanstatistiken sind hilfreich beim Identifizieren von Engpässen, wenn der Cluster oder die Abfrage nicht CPU-eingeschränkt ist, und die Leseleistung der Abfrage erfordert Untersuchung. Außerdem hilft es, das Ausführungsprofil der Abfrage aus einer geteilten Ebene zu verstehen.
Anmerkung
Derzeit ist die erfasste Anzahl von Aufteilungen pro Arbeitskraft aufgrund von Größenbeschränkungen der produzierten Daten auf 1000 begrenzt. Wenn die Anzahl der Splits pro Worker für die Abfrage diesen Grenzwert überschreitet, werden die höchsten 1000 längsten Unterbrechungen zurückgegeben.
So greifen Sie auf Scanstatistiken zu
Sobald die Sitzungseigenschaft festgelegt ist, beginnen nachfolgende Abfragen in der Sitzung, Statistiken von Quelloperatoren zu erfassen, sobald sie verfügbar sind. Es gibt mehrere Möglichkeiten, wie Benutzer Scanstatistiken nutzen und analysieren können, die für eine Abfrage generiert werden.
Json-Abfrage
Die Json-Registerkarte auf der Seite "Abfragedetails" stellt die JSON-Darstellung der Abfrage bereit, die Statistiken zu jeder Phase enthält, die Pipeline der Abfrage. Wenn die Sitzungseigenschaft festgelegt ist, enthält die JSON ein neues Feld namens scanStats
in queryStats.operatorSummaries[*]
. Das Array enthält ein Objekt pro Operatorinstanz.
Das folgende Beispiel zeigt ein JSON für eine Abfrage mit aktivierter hive connector
-Option und aktivierten Scanstatistiken.
Anmerkung
Die Zusammenfassung der Überprüfungsstatistiken enthält splitInfo, die vom Connector aufgefüllt wird. Auf diese Weise können Benutzer steuern, welche Informationen über den Store sie in ihre benutzerdefinierten Connectoren einfügen möchten.
Benutzeroberfläche für Scanstatistiken
Sie finden eine neue Registerkarte namens Scan Stats
auf der Seite "Abfragedetails", die die von diesem Feature erzeugten Statistiken visualisiert und Einblicke in die geteilte Kornleistung jedes Mitarbeiters bietet. Auf der Seite können Benutzer das Ausführungsprofil von Trino für eine spezifische Abfrage anzeigen, das Informationen wie parallele Lesevorgänge über die Zeit und den Durchsatz enthält.
Das folgende Beispiel zeigt eine Seite für eine Abfrage mit aktivierter Scanstatistik.
Verwenden des Microsoft Query-Loggers**
Microsoft Query Logger bietet integrierte Unterstützung für dieses Feature. Wenn dieses Feature aktiviert ist, füllt das Abfrageprotokollier-Plug-In eine Tabelle mit dem Namen operatorstats
zusammen mit der Abfrageereignissetabelle, diese Tabelle wird denormalisiert, sodass jede Operatorinstanz für jede Abfrage eine Zeile ist.