Überprüfen der Leistung von Measures, Beziehungen und Visuals

Abgeschlossen

Wenn Ihr semantisches Modell mehrere Tabellen, komplexe Beziehungen und Berechnungen, mehrere Visuals oder redundante Daten enthält, kann die Berichtsleistung beeinträchtigt werden. Die schlechte Leistung eines Berichts hat negative Auswirkungen auf die Benutzerfreundlichkeit.

Screenshot der Faktoren, die sich auf die Berichtsleistung auswirken.

Damit Sie die Leistung optimieren können, müssen Sie zunächst den Ursprung des Problems ermitteln. Anders ausgedrückt: Sie müssen herausfinden, welche Elemente des Berichts und des semantischen Modells die Leistungsprobleme verursachen. Anschließend können Sie Maßnahmen ergreifen, um diese Probleme zu beheben und somit die Leistung zu verbessern.

Ermitteln von Leistungsengpässen bei Berichten

Wenn Sie eine optimale Leistung in Ihren Berichten erreichen möchten, müssen Sie ein effizientes semantisches Modell erstellen, das über schnelle Abfragen und Measures verfügt. Mit einer guten Basis können Sie das Modell weiter verbessern, indem Sie die Abfragepläne und Abhängigkeiten analysieren und dann Änderungen vornehmen, um die Leistung weiter zu optimieren.

Sie sollten die Measures und Abfragen in Ihrem semantischen Modell überprüfen, um sicherzustellen, dass Sie die effizienteste Vorgehensweise verwenden, um die gewünschten Ergebnisse erhalten. Ihr Ausgangspunkt sollte das Identifizieren von im Code vorhandenen Engpässen sein. Wenn Sie die langsamste Abfrage im semantischen Modell ermitteln, können Sie sich zuerst auf den größten Engpass konzentrieren und eine Prioritätenliste für die Behebung der anderen Probleme erstellen.

Analysieren der Leistung

Sie können die Leistungsanalyse in Power BI Desktop verwenden, um herauszufinden, wie gut die Leistung der einzelnen Berichtselemente ist, wenn Benutzer*innen mit ihnen interagieren. Beispielsweise können Sie ermitteln, wie lange ein durch eine Benutzerinteraktion initiiertes Aktualisieren eines bestimmten Visuals dauert. Mithilfe der Leistungsanalyse können Sie die Elemente identifizieren, die zu den Leistungsproblemen beitragen, was bei der Problembehandlung hilfreich sein kann.

Stellen Sie vor dem Ausführen der Leistungsanalyse sicher, dass Sie mit einem leeren Visualcache und einem leeren Daten-Engine-Cache beginnen, um bei der Analyse (dem Test) so korrekte Ergebnisse wie möglich zu erhalten.

  • Visualcache: Wenn Sie ein Visual laden, können Sie den Visualcache nicht leeren, ohne Power BI Desktop zu schließen und wieder zu öffnen. Sie müssen die Analyse mit einem leeren Visualcache starten, um zu verhindern, dass ein Zwischenspeichern das Ergebnis beeinflusst.

    Sie können sicherstellen, dass Ihr Visualcache leer ist, indem Sie in Ihrer Power BI Desktop-Datei (.pbix) eine leere Seite hinzufügen. Speichern und schließen Sie dann die Datei, während diese Seite ausgewählt ist. Öffnen Sie die Power BI Desktop-Datei (.pbix), die Sie analysieren möchten, erneut. Sie wird auf der leeren Seite geöffnet.

  • Daten-Engine-Cache: Wenn eine Abfrage ausgeführt wird, werden die Ergebnisse zwischengespeichert. Dies führt zu irreführenden Ergebnissen bei der Analyse. Sie müssen den Datencache bereinigen, bevor Sie das Visual erneut ausführen.

    Zum Bereinigen des Datencaches können Sie entweder Power BI Desktop neu starten oder eine Verbindung zwischen DAX Studio und dem semantischen Modell herstellen und dann „Cache bereinigen“ aufrufen.

Wenn Sie die Caches bereinigt und die Power BI Desktop-Datei auf der leeren Seite geöffnet haben, wechseln Sie zur Registerkarte Ansicht, und wählen Sie dann die Option Leistungsanalyse aus.

Klicken Sie auf Aufzeichnung starten, um mit der Analyse zu beginnen, wählen Sie die Seite des zu analysierenden Berichts aus, und interagieren Sie mit den Elementen des Berichts, deren Leistung Sie messen möchten. Die Ergebnisse Ihrer Interaktionen werden im Bereich Leistungsanalyse angezeigt, noch während Sie daran arbeiten. Klicken Sie auf Beenden, wenn Sie fertig sind.

Screenshot des Startbildschirms „Leistungsanalyse“.

Ausführlichere Informationen finden Sie unter Verwenden der Leistungsanalyse zum Untersuchen der Leistung von Berichtselementen.

Überprüfen von Ergebnissen

Die Ergebnisse Ihres Leistungstests können Sie im Bereich Leistungsanalyse überprüfen. Damit Sie die Aufgaben in Reihenfolge der Dauer (von der längsten bis zur kürzesten Aufgabe) überprüfen können, klicken Sie mit der rechten Maustaste auf das Symbol Sortieren neben der Spaltenüberschrift Duration (ms), und wählen Sie dann Gesamtzeit in absteigender Reihenfolge.

Screenshot zur Sortierung der Ergebnisse im Analysetool.

Die Protokollinformationen für die einzelnen Visuals zeigen an, wie lange es gedauert hat, bis die folgenden Aufgabenkategorien ausgeführt wurden:

  • DAX-Abfrage: Hier wird die Zeit angegeben, die das Visual zum Senden der Abfrage und Analysis Services zum Zurückgeben der Ergebnisse benötigen.

  • Visualanzeige: Hier wird die Zeit angegeben, die zum Rendern des Visuals in der Anzeige benötigt wurde, einschließlich der Zeit zum Abrufen von Webbildern oder Geocodierungen.

  • Andere: Hier wird die Zeit angegeben, die das Visual zum Vorbereiten von Abfragen, zum Warten auf die Ausführung anderer Visuals oder zum Durchführen anderer Hintergrundverarbeitungsaufgaben benötigt hat. Wenn in dieser Kategorie eine lange Dauer angezeigt wird, besteht die einzige Möglichkeit, diese zu reduzieren, darin, DAX-Abfragen für andere Visuals zu optimieren oder die Anzahl der Visuals im Bericht zu reduzieren.

Screenshot von Kategorien in den Ergebnissen der Leistungsanalyse.

Die Ergebnisse der Analyse helfen Ihnen dabei, das Verhalten Ihres semantischen Modells nachzuvollziehen und die Elemente zu ermitteln, die Sie optimieren müssen. Sie können die Zeiträume zur Ausführung der einzelnen Elemente im Bericht vergleichen und diejenigen identifizieren, die eine lange Dauer aufweisen. Auf diese Elemente sollten Sie sich konzentrieren und untersuchen, warum diese so lange brauchen, um auf der Berichtsseite geladen zu werden.

Sie können DAX Studio verwenden, um Ihre Abfragen ausführlicher zu analysieren. Dabei handelt es sich um ein kostenloses Open-Source-Tool, das von einem anderen Dienst bereitgestellt wird.

Lösen von Problemen und Optimieren der Leistung

Die Ergebnisse Ihrer Analyse helfen Ihnen dabei, verbesserungswürdige Bereiche und Möglichkeiten zur Leistungsoptimierung zu identifizieren. Möglicherweise stellen Sie fest, dass Sie Verbesserungen an den Visuals, der DAX-Abfrage oder anderen Elementen in Ihrem semantischen Modell vornehmen müssen. Die folgenden Informationen enthalten Anweisungen dazu, wonach Sie Ausschau halten sollten und welche Änderungen Sie vornehmen können.

Visuals

Wenn Sie Visuals als Leistungsengpässe identifizieren, sollten Sie einen Weg finden, die Leistung mit minimalen Auswirkungen auf die Benutzererfahrung zu verbessern.

Verringern Sie ggf. die Anzahl von Visuals auf der Berichtsseite; je weniger Visuals, desto besser die Leistung. Stellen Sie sich die Frage, ob ein Visual wirklich notwendig ist und ob es für die Endbenutzer wichtig ist. Wenn die Antwort auf diese Frage nein lautet, sollten Sie das Visual entfernen. Anstatt mehrere Visuals auf der Seite zu verwenden sollten Sie andere Wege in Betracht ziehen, um weitere Informationen anzugeben. Beispielsweise können Sie Drillthroughseiten und QuickInfos zur Berichtsseite verwenden.

Untersuchen Sie die Anzahl der Felder in allen Visuals. Je mehr Visuals im Bericht enthalten sind, desto wahrscheinlicher sind Leistungsprobleme. Darüber hinaus gilt, dass der Bericht überfüllter und unklarer sein kann, je mehr Visuals enthalten sind. Die Obergrenze für Visuals liegt bei 100 Feldern (Measures oder Spalten). Ein Visual mit mehr als 100 Feldern wird also langsam geladen. Sie sollten hinterfragen, ob Sie all diese Daten wirklich in einem Visual benötigen. Möglicherweise stellen Sie fest, dass Sie die Anzahl der aktuellen Felder reduzieren können.

DAX-Abfrage

Wenn Sie die Ergebnisse im Bereich Leistungsanalyse untersuchen, können Sie sehen, wie viel Zeit die Power BI Desktop-Engine zum Auswerten der einzelnen Abfragen benötigt (in Millisekunden). DAX-Abfragen, die mehr als 120 Millisekunden benötigen, sind ein guter Ausgangspunkt. In diesem Beispiel identifizieren Sie eine bestimmte Abfrage mit einer langen Verarbeitungszeit.

Screenshot eines Beispiels für eine Leistungsanalyse mit langer Laufzeit.

Die Leistungsanalyse hebt mögliche Probleme hervor, gibt aber nicht an, welche Verbesserungsschritte Sie durchführen müssen. Sie sollten weitere Untersuchungen anstellen, um in Erfahrung zu bringen, wieso die Verarbeitung so lange dauert. Sie können DAX Studio verwenden, um Ihre Abfragen ausführlicher zu untersuchen.

Klicken Sie beispielsweise auf Abfrage kopieren, um die Berechnungsformel in die Zwischenablage zu kopieren, und fügen Sie diese dann in DAX Studio ein. Sie können den Berechnungsschritt dann ausführlicher überprüfen. In diesem Beispiel versuchen Sie, die Gesamtzahl der Produkte mit Bestellmengen über oder gleich fünf zu zählen.

Count Customers =
CALCULATE (
    DISTINCTCOUNT ( Order[ProductID] ),
    FILTER ( Order, Order[OrderQty] >= 5 )
)

Nachdem Sie die Abfrage analysiert haben, können Sie anhand Ihres eigenen Wissens und Ihrer Erfahrung identifizieren, wo Leistungsprobleme vorliegen. Sie können auch verschiedene DAX-Funktionen testen, um zu überprüfen, ob diese die Leistung verbessern. Im folgenden Beispiel wurde die FILTER-Funktion durch die KEEPFILTER-Funktion ersetzt. Als der Test erneut in der Leistungsanalyse durchgeführt wurde, war die Verarbeitungszeit aufgrund der KEEPFILTER-Funktion kürzer.

Count Customers =
CALCULATE (
    DISTINCTCOUNT ( Order[ProductID] ),
    KEEPFILTERS (Order[OrderQty] >= 5 )
)

In diesem Fall können Sie die FILTER-Funktion durch die KEEPFILTER-Funktion ersetzen, um die Auswertungsdauer für diese Abfrage maßgeblich zu reduzieren. Wenn Sie diese Änderung vornehmen, sollten Sie zur Überprüfung, ob die Verarbeitungszeit verbessert wurde, den Datencache bereinigen und dann die Leistungsanalyse erneut durchführen.

Screenshot eines Beispiels für eine Leistungsanalyse mit kurzer Laufzeit.

Semantikmodell

Wenn für Measures und Visuals niedrige Zeitwerte angezeigt werden (d. h. sie weisen eine kurze Verarbeitungszeit auf), sind diese nicht die Ursache für die Leistungsprobleme. Wenn stattdessen für die DAX-Abfrage eine lange Verarbeitungszeit angezeigt wird, liegt vermutlich ein schlecht geschriebenes Measure vor oder es ist ein Problem mit dem semantischen Modell aufgetreten. Ein solches Problem könnte von den Beziehungen, Spalten oder Metadaten in Ihrem Modell ausgelöst werden. Alternativ kann auch die Option Autom. Datum/Uhrzeit die Ursache sein (siehe folgender Abschnitt).

Beziehungen

Sie sollten die Beziehungen zwischen Ihren Tabellen überprüfen, um sicherzustellen, dass Sie die richtigen Beziehungen eingerichtet haben. Stellen Sie sicher, dass die Eigenschaften der Beziehungskardinalität ordnungsgemäß konfiguriert sind. Beispielsweise könnte eine einseitige Spalte mit eindeutigen Werten fälschlicherweise als mehrseitige Spalte konfiguriert sein. Weitere Informationen dazu, wie sich die Kardinalität auf die Leistung auswirkt, finden Sie im späteren Verlauf dieses Moduls.

Spalten

Es ist eine bewährte Methode, keine Spalten mit Daten zu importieren, die Sie nicht benötigen. Sie sollten versuchen, diese beim Laden von Daten in Power BI Desktop bereits bei der Quelle herauszufiltern, um zu vermeiden, Spalten im Power Query-Editor löschen zu müssen. Wenn es jedoch nicht möglich ist, redundante Spalten aus der Quellabfrage zu löschen, oder wenn die Daten bereits im Rohzustand importiert wurden, können Sie immer den Power Query-Editor zum Untersuchen der einzelnen Spalten verwenden. Untersuchen Sie, ob Sie die einzelnen Spalten wirklich benötigen, und versuchen Sie, ihre Vorteile für Ihr semantisches Modell zu identifizieren. Wenn Sie feststellen, dass eine Spalte keinen Mehrwert bietet, sollten Sie sie aus Ihrem semantischen Modell entfernen. Angenommen, Sie verfügen über eine ID-Spalte mit Tausenden einzigartigen Zeilen. Sie wissen, dass Sie diese spezifische Spalte nicht in Beziehungen verwenden werden, weshalb sie auch nicht in Berichten verwendet wird. Daher sollten Sie diese Spalte als überflüssig und als verschwendeten Platz in Ihrem semantischen Modell betrachten.

Wenn Sie eine unnötige Spalte entfernen, reduzieren Sie die Größe des semantischen Modells, was wiederum zu einer kleineren Dateigröße und schnelleren Aktualisierungszeiten führt. Da das semantische Modell dann nur relevante Daten enthält, wird auch die Gesamtleistung des Berichts verbessert.

Weitere Informationen finden Sie unter Verfahren zur Datenreduktion für die Importmodellierung.

Metadaten

Metadaten sind Informationen über andere Daten. Power BI-Metadaten enthalten Informationen zu Ihrem semantischen Modell, z. B. den Namen, den Datentyp und das Format der einzelnen Spalten, das Schema der Datenbank, den Berichtsentwurf, den Zeitpunkt der letzten Änderung an der Datei, die Datenaktualisierungszeiten und viele weitere Informationen.

Wenn Sie Daten in Power BI Desktop laden, empfiehlt es sich, die entsprechenden Metadaten zu analysieren, damit Sie mögliche Inkonsistenzen mit Ihrem semantischen Modell identifizieren und die Daten normalisieren können, bevor Sie mit dem Erstellen von Berichten beginnen können. Das Durchführen einer Analyse Ihrer Metadaten kann die Leistung Ihres semantischen Modells verbessern, weil Sie beim Analysieren Ihrer Metadaten überflüssige Spalten, Fehler in Ihren Daten, fehlerhafte Datentypen, die Menge der geladenen Daten (große semantische Modelle, einschließlich Transaktions- oder Verlaufsdaten, beanspruchen mehr Zeit) und viele weitere Probleme identifizieren können.

Sie können den Power Query-Editor in Power BI Desktop verwenden, um die Spalten, Zeilen und Werte der Rohdaten zu untersuchen. Anschließend können Sie die verfügbaren Tools verwenden (beispielsweise die im folgenden Screenshot hervorgehobenen), um die erforderlichen Änderungen vorzunehmen.

Screenshot der Optionen auf der Startregisterkarte im Abfrage-Editor.

Die folgenden Optionen sind in Power Query verfügbar:

  • Unnecessary columns (Unnötige Spalten): Hiermit werden alle Spalten ausgewertet, um zu ermitteln, ob sie notwendig sind. Wenn mindestens eine Spalte nicht im Bericht verwendet wird und daher unnötig ist, sollten Sie diese mithilfe der Option Spalten entfernen auf der Registerkarte Start entfernen.

  • Unnötige Zeilen: Hiermit werden die ersten Zeilen im semantischen Modell überprüft, um festzustellen, ob diese leer sind oder Daten enthalten, die Sie nicht in Ihren Berichten benötigen. Wenn das der Fall ist, werden die Zeilen mithilfe der Option Zeilen entfernen auf der Registerkarte Start entfernt.

  • Data type (Datentyp): Hiermit werden die Datentypen der Spalten auf Richtigkeit überprüft. Wenn ein falscher Datentyp ermittelt wird, ändern Sie diesen, indem Sie die Spalte auswählen, auf der Registerkarte Transformieren auf Datentyp klicken und dann den richtigen Datentyp aus der Liste auswählen.

  • Query names (Abfragenamen): Hiermit werden die Namen der Abfragen (Tabellen) im Bereich Abfragen überprüft. Wie bei den Namen der Spaltenüberschriften sollten Sie ungewöhnliche oder nicht hilfreiche Abfragenamen in Namen ändern, die sinnvoller oder den Benutzern vertraut sind. Sie können eine Abfrage umbenennen, indem Sie mit der rechten Maustaste auf die Abfrage klicken, Umbenennen auswählen, den Namen nach Bedarf bearbeiten und dann die EINGABETASTE drücken.

  • Column details (Spalteninformationen): Der Power Query-Editor umfasst die folgenden drei Optionen zum Anzeigen einer Datenvorschau, die Sie dazu verwenden können, die Metadaten zu analysieren, die Ihren Spalten zugeordnet sind. Wie im folgenden Screenshot gezeigt finden Sie diese Optionen auf der Registerkarte Ansicht.

    • Column quality (Spaltenqualität): Hiermit wird ermittelt, welcher Prozentsatz der Elemente in der Spalte gültig, fehlerhaft oder leer ist. Wenn der Prozentsatz an gültigen Elementen nicht 100 % ist, sollten Sie der Ursache auf den Grund gehen, die Fehler korrigieren und leere Werte auffüllen.

    • Spaltenverteilung: Zeigt die Häufigkeit und Verteilung der Werte in den einzelnen Spalten an. Später in diesem Modul werden Sie diese Option noch genauer analysieren.

    • Spaltenprofil: Zeigt ein Spaltenstatistikdiagramm und ein Spaltenverteilungsdiagramm an

Screenshot der Spaltenprofiloptionen.

Hinweis

Wenn Sie ein großes semantisches Modell mit mehr als 1.000 Datensätzen überprüfen und Sie das gesamte semantische Modell analysieren möchten, müssen Sie die Standardoption unten im Fenster ändern. Klicken Sie dort auf Spaltenprofilerstellung basierend auf obersten 1000 Zeilen>Spaltenprofilerstellung basierend auf gesamtem Dataset.

Screenshot der Spaltenprofilzeilen.

Weitere Metadaten, die Sie berücksichtigen sollten, sind die Informationen zum semantischen Modell als Ganzes, z. B. die Dateigröße und die Datenaktualisierungsraten. Diese Metadaten befinden sich in der dazugehörigen Power BI Desktop-Datei (PBIX). Die Daten, die Sie in Power BI Desktop laden, sind komprimiert und werden von der Speicher-Engine VertiPaq auf dem Datenträger gespeichert. Die Größe Ihres semantischen Modells hat einen direkten Einfluss auf seine Leistung: Ein semantisches Modell mit geringerer Größe verwendet weniger Ressourcen (Arbeitsspeicher) und beschleunigt die Aktualisierung von Daten, Berechnungen sowie das Rendern von Visuals in Berichten.

Das Feature „Autom. Datum/Uhrzeit“

Ein weiteres zu berücksichtigendes Element beim Optimieren der Leistung ist die Option Autom. Datum/Uhrzeit in Power BI Desktop. Standardmäßig ist dieses Feature global aktiviert, d. h. Power BI Desktop erstellt automatisch eine ausgeblendete berechnete Tabelle für die einzelnen Datenspalten, vorausgesetzt, einige Bedingungen sind erfüllt. Die neuen, ausgeblendeten Tabellen können als Ergänzung zu den Tabellen verstanden werden, die in Ihrem semantischen Modell bereits vorhanden sind.

Die Option Autom. Datum/Uhrzeit ermöglicht es Ihnen, mit Zeitintelligenz zu arbeiten, wenn Sie Filter-, Gruppier- und Drilldownvorgänge für Kalenderzeiträume ausführen. Es wird empfohlen, dass Sie die Aktivierung der Option Autom. Datum/Uhrzeit nur dann beibehalten, wenn Sie mit Kalenderzeiträumen arbeiten und im Bezug auf die Zeit einfache Modellanforderungen haben.

Wenn Ihre Datenquelle bereits eine Datendimensionsquelle definiert, sollte diese Tabelle verwendet werden, um Zeit innerhalb Ihrer Organisation konsistent zu definieren. Folglich sollten Sie die globale Option Autom. Datum/Uhrzeit deaktivieren. Das Deaktivieren dieser Option verkleinert Ihr semantisches Modell möglicherweise und kann die Aktualisierungszeit reduzieren.

Sie können die Option Autom. Datum/Uhrzeit global aktivieren/deaktivieren, sodass sie auf alle Ihre Power BI Desktop-Dateien angewendet wird, oder Sie aktivieren/deaktivieren die Option für die aktuelle Datei, sodass sie nur auf eine einzelne Datei angewendet wird.

Navigieren Sie zum Aktivieren/Deaktivieren der Option Autom. Datum/Uhrzeit zu Datei>Optionen und Einstellungen>Optionen, und wählen Sie dann entweder die Seite Global oder die Seite Aktuelle Datei aus. Klicken Sie auf der ausgewählten Seite dann auf Daten laden, und klicken Sie dann wie gewünscht im Bereich Zeitintelligenz auf das Kontrollkästchen, oder entfernen Sie das Häkchen daraus.

Screenshot: Konfigurieren der automatischen Datums-/Uhrzeitoptionen.

Eine Übersicht und eine allgemeine Einführung zum Feature Autom. Datum/Uhrzeit erhalten Sie unter Anwenden der automatischen Angabe von Datum/Uhrzeit in Power BI Desktop.