Was macht power-bi-performance-troubleshooting?
Systematische Power BI Performance-Troubleshooting-Anleitung zur Identifizierung, Diagnose und Behebung von Leistungsproblemen in Power BI-Modellen, Berichten und Abfragen.
Übersicht
Diese Anleitung hilft dir, die häufigsten Leistungsprobleme in Power BI-Umgebungen zu lokalisieren und zu beheben. Sie deckt sowohl Desktop- als auch Service-basierte Workloads ab.
Voraussetzungen
- Power BI Desktop (Version 2.xx oder höher)
- Power BI Service – Zugriff auf die Berichte und Modelle
- Performance Analyzer – in Power BI Desktop integriert (unter "Ansicht" aktivierbar)
- DAX Studio (optional, aber empfohlen) – für erweiterte Abfrageanalyse
- SQL Server Profiler (optional) – für Abfrage-Trace-Aufzeichnung
Anleitung
-
Leistungsproblem identifizieren
- Öffne den Performance Analyzer: Gehe zu "Ansicht" > "Leistungsanalyse" und aktiviere die Aufzeichnung.
- Führe die langsame Aktion aus (z. B. Berichtsinteraktion, Filterwechsel).
- Notiere die Dauer und die Anzahl der DAX-Abfragen.
-
Hauptursache diagnostizieren
- Überprüfe die Top-Langläufer im Performance Analyzer (Visuals mit der höchsten Gesamtzeit).
- Untersuche die DAX-Abfragen nach ineffizienten Patterns:
- Vermeide
FILTERüber große Tabellen, verwendeCALCULATETABLEoderKEEPFILTERS. - Überprüfe Beziehungen auf Einweg- oder bidirektionale Filterung.
- Vermeide
- Nutze DAX Studio, um Abfragepläne zu visualisieren (
EVALUATE-Modus).
-
Lösung umsetzen
- Optimiere Measures: Verwende
SUMXstattFILTERfür Aggregationen. - Reduziere die Datenmenge: Importiere nur benötigte Spalten/Zeilen via Power Query.
- Füge Aggregationstabellen hinzu für große Modelle (>1 Mio. Zeilen).
- Überprüfe die Komprimierung: Reduziere hohe Kardinalität (z. B. Timestamps auf Datum reduzieren).
- Optimiere Measures: Verwende
-
Ergebnisse validieren
- Führe den Performance Analyzer erneut aus und vergleiche die Zeiten.
- Teste unter realistischen Lastbedingungen (z. B. mit Parallelnutzern im Service).
Beispiel für Optimierung
// Ursprüngliches langsames Measure
Total Sales (Inefficient) =
CALCULATE(
SUM(Sales[Amount]),
FILTER(Customers, Customers[Region] = "EU")
)
// Optimiertes Measure
Total Sales (Efficient) =
CALCULATE(
SUM(Sales[Amount]),
Customers[Region] = "EU"
)
Weiterführende Ressourcen
- Microsoft Learn: Power BI Performance Analyzer
- DAX Studio – Offizielle Dokumentation
- SQLBI: DAX Performance Tipps
Lizenz
MIT