Verwenden der Leistungsanalyse zum Diagnostizieren von Problemen
Bevor Sie ein Leistungsproblem beheben können, müssen Sie es finden. Die Leistungsanalyse ist das primäre Diagnosetool, das in Power BI integriert ist, um zu ermitteln, was in einem Bericht langsam ist und warum. Es misst, wie lange jedes visuelle Element lädt und teilt diese Zeit in Kategorien auf, damit Sie genau bestimmen können, wo sich der Engpass befindet.
Öffne Leistungsanalysator
Wählen Sie in Power BI Desktop das Menüband Optimize und dann Performance Analyzer aus. Der Bereich "Leistungsanalyse" wird auf der rechten Seite des Berichtsbereichs geöffnet. Sobald das Fenster angezeigt wird, können Sie die Aufzeichnung starten.
Hinweis
Leistungsanalyse steht auch im Power BI-Dienst zur Verfügung. Öffnen Sie einen Bericht im Bearbeitungsmodus, wählen Sie das Menü "Ansicht" und dann "Leistungsanalyse" aus. Die Funktionen zur Zeitaufteilung und zur Abfrage von Kopien funktionieren auf die gleiche Weise.
Aufzeichnen und Messen der Leistung
Führen Sie die folgenden Schritte aus, um Zeitdauerdaten zu erfassen:
- Wählen Sie " Aufzeichnung starten " im Bereich "Leistungsanalyse" aus.
- Interagieren Sie mit dem Bericht: Aktualisieren Sie visuelle Elemente, passen Sie Datenschnitte an, oder navigieren Sie zwischen Seiten.
- Beobachten Sie die Zeitmessergebnisse, die in Echtzeit für jede Visualisierung angezeigt werden.
- Wählen Sie "Beenden" aus, wenn Sie genügend Daten erfasst haben.
Jede Interaktion (z. B. Ändern eines Datenschnitts oder Aktualisieren einer Seite) erstellt einen Abschnitt im Bereich. Unter jedem Abschnitt werden die einzelnen visuellen Elemente und deren Ladezeiten angezeigt.
Tipp
Löschen Sie den visuellen Cache, bevor Sie messen, um genaue Ergebnisse zu erhalten. In Power BI Desktop finden Sie diese Option im Bereich "Leistungsanalyse". Zwischengespeicherte Daten können die tatsächliche Abfrageleistung maskieren, sodass durch das Löschen sichergestellt wird, dass Sie die Echtzeitausführung messen.
Sie können auch ein einzelnes visuelles Element messen. Wählen Sie bei laufender Aufzeichnung des Leistungsanalysators das Symbol Dieses Visualisierer analysieren in der oberen rechten Ecke eines beliebigen Visualisierers, um dessen Datensätze zu aktualisieren und einzeln zu erfassen.
Grundlegendes zu Zeitmetriken
Die Leistungsanalyse bricht die Ladezeit jedes visuellen Elements in mehrere Kategorien auf:
| Kennzahl | Was sie misst |
|---|---|
| DAX-Abfrage | Zeit für das visuelle Senden einer Abfrage an das semantische Modell und Empfangen von Ergebnissen. Dies ist der häufigste Engpass. |
| Visuelle Anzeige | Zeit für das Rendern des visuellen Elements auf dem Bildschirm, einschließlich des Abrufens von Webbildern oder Geocodierung. |
| Direkte Abfrage | Zeit für Abfragen, die an eine externe Datenquelle gesendet werden, wenn sie den DirectQuery-Speichermodus verwenden. |
| Sonstige | Zeit für die Hintergrundverarbeitung, einschließlich Warten auf den Abschluss anderer visueller Elemente, Vorbereiten von Abfragen und Netzwerkaufwand. |
Der Wert Duration (ms) stellt die Gesamtzeit von Anfang bis Ende für jeden Vorgang dar. Da die meisten Vorgänge sequenziell in einem einzelnen UI-Thread ausgeführt werden, kann die gemeldete Dauer Zeit für das Warten in einer Warteschlange enthalten, während andere visuelle Elemente abgeschlossen sind.
Wenn Sie einen langsamen Bericht diagnostizieren, konzentrieren Sie sich zuerst auf den größten Mitwirkenden. Wenn die DAX-Abfragezeit dominiert, liegt das Problem im Modell oder in der Maßnahme. Wenn die visuelle Anzeigezeit hoch ist, rendert das Visuelle selbst zu viele Daten. Wenn die Zeit für die direkte Abfrage sehr lang ist, könnte das Problem in der externen Datenquelle oder der Abfragefaltung liegen.
Exportieren und Analysieren von DAX-Abfragen
Eines der nützlichsten Funktionen des Performance Analyzers ist die Möglichkeit, die genaue DAX-Abfrage zu extrahieren, die ein Visual an das semantische Modell sendet. Auf diese Weise können Sie analysieren, warum eine bestimmte Abfrage langsam ist.
So exportieren Sie eine DAX-Abfrage:
- Erweitern Sie den Eintrag eines visuellen Elements im Bereich "Leistungsanalyse".
- Wählen Sie "In DAX-Abfrageansicht ausführen" aus, um die Abfrage automatisch auf einer neuen Registerkarte zu öffnen, oder wählen Sie "Abfrage kopieren" aus, um sie in die Zwischenablage zu kopieren.
- Führen Sie in der DAX-Abfrageansicht die Abfrage aus, und überprüfen Sie die Ergebnisse.
Das Ergebnisraster zeigt die Daten an, die die Visualisierung verwendet. Sie können die Abfragestruktur überprüfen, teure Vorgänge identifizieren und Optimierungen direkt in der DAX-Abfrageansicht testen.
Die von einem visuellen Element generierte DAX-Abfrage ist häufig ausführlicher als eine manuell geschriebene Abfrage. Es enthält zusätzliche VARs, TOPN-Wrapper und Spaltenverweise, die den Visualisierungstypwechsel unterstützen. Wenn Copilot verfügbar ist, kann die Abfragestruktur in der DAX-Abfrageansicht vereinfacht werden. Versuchen Sie eine Eingabeaufforderung wie "VaRs und TOPN entfernen und diese DAX-Abfrage vereinfachen".
Hinweis
Im Power BI-Dienst ist die Schaltfläche Run in der DAX-Abfrageansicht nicht verfügbar. Kopieren Sie stattdessen die Abfrage, wählen Sie "Datenmodell öffnen" aus, um die Webmodellierung zu öffnen, und wechseln Sie dann zur DAX-Abfrageansicht, um sie einzufügen und auszuführen. Abfragen im Web werden nach dem Schließen des Browsers nicht gespeichert.
Verwenden von DAX Studio für eine tiefere Diagnose
DAX Studio ist ein kostenloses Open-Source-Tool, das eine Verbindung mit Ihrem lokalen Semantikmodell oder einem veröffentlichten Semantikmodell über einen XMLA-Endpunkt herstellt. DAX Studio bietet Funktionen, die über die integrierte DAX-Abfrageansicht hinausgehen:
- Server-Zeiten: trennt die Abfrageausführung in die Zeit der Formel-Engine (FE) und der Speicher-Engine (SE) und zeigt genau an, wo die Engine ihren Aufwand investiert.
- Abfrageplan: Zeigt den logischen und physischen Abfrageplan an, der dazu beiträgt, ineffiziente Vorgänge in komplexen Measures zu identifizieren.
- Modellmetriken: analysiert Tabellen- und Spaltengrößen, Kardinalitäts- und Komprimierungsstatistiken, sodass Sie die größten Mitwirkenden für die Modellgröße identifizieren können.
DAX Studio ist besonders nützlich, wenn Sie Diagnosen auf Modulebene benötigen, die die Leistungsanalyse und die DAX-Abfrageansicht nicht verfügbar machen, oder wenn Sie keinen Zugriff auf Copilot zur Vereinfachung von Abfragen haben. Der Workflow ist identisch: Kopieren Sie eine DAX-Abfrage aus der Leistungsanalyse, fügen Sie sie in DAX Studio ein, und verwenden Sie Serveranzeigedauern und Abfragepläne, um zu verstehen, wo das Modul seine Zeit verbringt.
Effektives Interpretieren von Ergebnissen
Rohzahlen allein erzählen nicht die ganze Geschichte. Eine effektive Diagnose erfordert einen Vergleich der Ergebnisse im Kontext:
- Vergleichen Sie relative Zeitverläufe über visuelle Elemente hinweg. Wenn ein visuelles Element 5.000 ms benötigt und alle anderen weniger als 200 ms belegen, ist dieses visuelle Element der Fokusbereich.
- Identifizieren Sie die Engpasskategorie. Ein Visualisierer mit einer DAX-Abfragezeit von 4.800 ms und einer Anzeigezeit von 200 ms hat ein Datenmodell- oder Messungsproblem, kein Rendering-Problem.
- Testen Sie mit repräsentativen Daten. Leistungsmessungen für ein Entwicklungsdatenset mit 1.000 Zeilen spiegeln die Produktionsleistung für ein Dataset mit 10 Millionen Zeilen nicht genau wider.
- Wiederholen Sie Messungen. Eine einzelne Messung kann durch Zwischenspeichern, Netzwerkvariabilität oder Hintergrundprozesse beeinflusst werden. Führen Sie die Messung mehrmals aus, und beobachten Sie das Muster.
Betrachten Sie dieses Beispiel: Eine Berichtsseite verfügt über fünf visuelle Elemente. Nachdem Sie den Cache gelöscht und alle visuellen Elemente aktualisiert haben, sehen die Ergebnisse wie folgt aus:
| Visuell | DAX-Abfrage (ms) | Visuelle Anzeige (ms) | Summe (ms) |
|---|---|---|---|
| Umsatz nach Region (Balkendiagramm) | 120 | 80 | 200 |
| Monatlicher Trend (Liniendiagramm) | 150 | 90 | 240 |
| Produktdetails (Tabelle) | 4,500 | 300 | 4,800 |
| KPI-Karte | 50 | 30 | 80 |
| Top-Kunden (Tabelle) | 180 | 110 | 290 |
Die Produktdetailseite ist eindeutig der Ausreißer. Die DAX-Abfragezeit von 4.500 ms deutet auf ein kostspieliges Maß oder eine übermäßige Datenanforderung hin. Im nächsten Schritt kopieren Sie diese Abfrage, analysieren sie in der DAX-Abfrageansicht und ermitteln, ob das Problem eine komplexe Berechnung, ein ineffizientes Filtermuster oder die Rückgabe zu vieler Daten ist.
Bewährte Methoden zur Leistungsmessung
Befolgen Sie die folgenden Richtlinien, um zuverlässige und umsetzbare Ergebnisse aus der Leistungsanalyse zu erhalten:
- Löschen Sie den visuellen Cache vor jedem Test. Zwischengespeicherte Ergebnisse verdecken die reale Abfrageausführungszeit.
- Isolieren von Variablen. Ändern Sie jeweils eine Sache, und messen Sie es dann erneut.
- Testen Sie realistische Szenarien. Verwenden Sie Produktionsdaten und typische Filterauswahlen.
- Dokumenten-Basislinien. Zeichnen Sie Zeitangaben vor und nach Änderungen auf, damit Sie die Verbesserung quantifizieren können.
- Konzentrieren Sie sich auf visuelle Elemente, die sich auf die Benutzer auswirken. Priorisieren Sie visuelle Elemente auf der Standardmäßigen Zielseite und häufig verwendeten Berichtsseiten.
Die Leistungsanalyse ist Ihr Ausgangspunkt im Fehlerbehebungsablauf. Sie erfahren, was langsam ist und welche Kategorie (DAX, visual, DirectQuery) am meisten beiträgt. Der nächste Schritt besteht darin, das Problem zu beheben: beginnend mit der DAX-Optimierung.