Ein Power BI-Bericht, der mehrere Sekunden zum Laden braucht, ist ein Problem — nicht nur für die Nutzererfahrung, sondern auch für die Glaubwürdigkeit Ihrer Dashboards. In diesem Artikel erfahren Sie, wo Performance typischerweise verloren geht und wie Sie sie zurückgewinnen.
Wo die Zeit bleibt
Die Ladezeit eines Berichts setzt sich aus drei Phasen zusammen:
- Abfrage (Query) — Daten aus der Quelle holen (Power Query / M).
- Modell — DAX-Berechnungen und das Speichermodell (VertiPaq) auswerten.
- Darstellung (Render) — Visuals zeichnen und aktualisieren.
Die meisten echten Performance-Probleme liegen in Phase 1 oder 2, nicht beim Rendern.
Schritt 1: Messen statt raten
Bevor Sie optimieren, messen Sie. Der Performance Analyzer (in Power BI Desktop unter dem Menü Ansicht) zeigt genau, wie lange jedes Visual und jede Abfrage braucht. Exportieren Sie das Ergebnis nach DAX Studio, um die zugrunde liegenden Abfragen zu analysieren.
Tipp: Sortieren Sie im Performance Analyzer nach Dauer. Das langsamste Visual ist Ihr erster Hebel.
Schritt 2: Das Datenmodell verschlanken
Ein großes Modell ist ein langsames Modell. Die wirkungsvollsten Maßnahmen:
- Nur benötigte Spalten laden. Entfernen Sie Spalten, die niemand verwendet.
- Richtige Datentypen. Texte sind teurer als Ganzzahlen. Verwenden Sie nach Möglichkeit ganze Zahlen für Schlüssel.
- Star-Schema statt Schneeflocke. Denormalisieren Sie Dimensionen; Power BI arbeitet mit Stern-Schemas am schnellsten.
- Query Folding nutzen. Lassen Sie Filter und Transformationen von der Datenquelle erledigen, nicht von Power Query. Prüfen Sie in den angewandten Schritten, ob ein Schritt das Folding unterbricht.
Schritt 3: DAX optimieren
Langsame Measures sind oft das Ergebnis von zeilenweisen Iterationen über große Tabellen.
// Langsam: jede Zeile einzeln gegen die gesamte Faktentabelle geprüft
Slow Sales :=
SUMX(
Sales,
IF(Sales[Amount] > 1000, Sales[Amount], 0)
)
// Schneller: Aggregation auf Datenbankebene, kein zeilenweiser IF
Fast Sales :=
CALCULATE(
SUM(Sales[Amount]),
Sales[Amount] > 1000
)
Regel: Vermeiden Sie SUMX/FILTER über Millionen von Zeilen, wenn ein CALCULATE mit Filter dasselbe leistet. CALCULATE nutzt die internen Speicherindexe (VertiPaq) viel besser aus.
Schritt 4: VertiPaq verstehen
Power BI komprimiert Daten spaltenweise. Hohe Kardinalität — also viele einzigartige Werte in einer Spalte — verschlechtert die Kompressionsrate. Vermeiden Sie daher:
- Eindeutige IDs als Text (verwenden Sie Ganzzahlen).
- Datumszeitstempel mit Uhrzeit in Faktentabellen (trennen Sie Datum und Uhrzeit).
- Frei erfassbare Textfelder als Schlüssel.
Das kostenlose Tool VertiPaq Analyzer zeigt die Spalten mit der schlechtesten Kompressionsrate — ein hervorragender Ausgangspunkt.
Häufige Fehler
- Zu viele Visuals auf einer Seite. Jedes Visual ist eine eigene Abfrage. Weniger Visuals, mehr Geschwindigkeit.
CALCULATEin einer schleifenartigenSUMX-Struktur. Das vervielfacht die Rechenzeit.- Importmodus, wo DirectQuery nötig wäre (oder umgekehrt). Import ist meist schneller; DirectQuery nur, wenn Echtzeit-Pflicht besteht.
Weiterführende Anleitungen
- Bedingte Formatierung in Power BI — die englische Anleitung zu Visual-Features.
- Star-Schema in Power BI — die Grundlage schneller Modelle.
- DAX-Optimierung in Power BI — Measures beschleunigen.