Streudiagramm-Visualisierungen mit Charticulator
In diesem Tutorial erfahren Sie, wie Sie mit Charticulator eine Streudiagramm-Visualisierung für Ihren LuckyTemplates-Bericht erstellen und entwerfen.
In diesem Tutorial wird die Materialisierung für Datencaches in DAX Studio erläutert. In diesem Beitrag wird gezeigt, wie sich dies auf Ihre Berechnung beim Generieren von Ergebnissen mit Ihrer Abfrage auswirkt. Sie erfahren, welche Materialisierung besser ist, um die Leistung von DAX zu maximieren.
Es gibt zwei Ideen der Materialisierung: Frühe Materialisierung und Späte Materialisierung .
Inhaltsverzeichnis
Frühe Materialisierung
Von einer frühen Materialisierung spricht man, wenn die Anzahl der materialisierten Zeilen größer ist als die Anzahl der für die Ausgabe benötigten Zeilen.
Wenn Ihre Ausgabe eine Tabelle nach Kalenderjahr ist und Sie über Daten aus fünf Jahren verfügen, ist das Einbringen vieler materialisierter Zeilen nicht erforderlich. Die beste Vorgehensweise besteht darin, dass die Anzahl der materialisierten Zeilen der Anzahl der benötigten Zeilen entspricht. Dies ist jedoch nicht immer der Fall, da es von der Komplexität Ihres DAX und Ihrer Datenkonfiguration abhängt.
Denken Sie immer daran, dass Daten aus Spalten bestehen. Wenn die Formel-Engine also an einer Tabelle arbeiten muss, werden die Spalten wieder in einem Tabellenformat zusammengeführt, was der Materialisierung entspricht. Bei einer Early-Materialization-Idee sendet die Speicher-Engine einen Datencache an die Formel-Engine. Die Formel-Engine arbeitet dann mit diesem Cache und führt komplexe Prozesse aus.
Eine vorzeitige Materialisierung kann durch komplexe Verknüpfungen oder eine Viele-zu-Viele-Beziehung in Ihren Datenmodellen verursacht werden. Es kann auch durch komplexe Filter oder Iteratoren verursacht werden.
Es ist nicht falsch, komplexe Maßnahmen zu ergreifen; Sie müssen sie nur richtig einrichten, um die Speicher-Engine bestmöglich zu nutzen.
Späte Materialisierung
Von einer späten Materialisierung spricht man, wenn die Anzahl der materialisierten Zeilen gleich oder nahezu der Anzahl der für Ihre Ausgabe benötigten Zeilen entspricht.
Die Speicher-Engine erledigt fast die gesamte Arbeit und lässt nichts für die Formel-Engine übrig. Dadurch wird die gesamte Berechnung schneller.
Dies sind Beispielabfragen zur frühen und späten Materialisierung:
Stellen Sie sicher, dass Sie den Cache leeren, bevor Sie diese Abfragen ausführen. Dadurch werden Ihre Abfragen für den kalten Cache ausgeführt. Wenn Sie Ihren DAX ausführen, ohne den Cache zu leeren, erhalten Sie dieses Ergebnis:
Die Gesamtausführungszeit beträgt nur 1861 Millisekunden, da bereits ein Cache verwendet wurde. Leeren Sie daher immer Ihren Cache, bevor Sie Ihre Abfragen ausführen.
Wenn Sie die Abfrage „Frühe Materialisierung“ ausführen, können Sie sehen, dass die Gesamtzeit 9485 Millisekunden beträgt. Es generierte einen Datencache und eine einzeilige Ausgabe, gab jedoch 25 Millionen Zeilen zurück.
Sie müssen nicht 25 Millionen Zeilen materialisieren, um ein einzeiliges Ergebnis zu erhalten, da dies Zeit kostet und die Leistung von DAX verlangsamt.
Wenn Sie die Abfrage „Late Materialization“ ausführen, können Sie sehen, dass die gesamte Berechnung nur 1340 Millisekunden dauerte. Außerdem wurden zwei Datencaches generiert, von denen jeder 5003 Zeilen zurückgab.
Wenn Sie sich den physischen Abfrageplan ansehen, sehen Sie 5000 Zeilen. Sie haben nicht die gleiche Anzahl an Zeilen. Das Ergebnis der Server-Timings weicht manchmal geringfügig von der genauen Anzahl der Zeilen im Abfrageplan ab.
Wenn Sie also an einem Datencache mit 25 Millionen Zeilen arbeiten, verfügen Sie jetzt über zwei Datencaches mit 5003 Zeilen. Deshalb führt die Arbeit mit der späteren Materialisierung zu schnelleren Ergebnissen als mit der frühen Materialisierung.
In jeder Materialisierungsabfrage
Wenn Sie sich nur die Abfrage ansehen, können Sie bereits erkennen, dass die spätere Materialisierung schneller ist. Die Abfrage „Frühe Materialisierung“ zählt die Zeilen einer zusammengefassten Tabelle.
Die Tabelle, die zusammengefasst und materialisiert wird, ist größer als nur ein von für die Tabelle, was bei der Late Materialization-Abfrage der Fall ist.
Wenn Ihre Abfrage langsam ist, prüfen Sie zunächst, wie viele Zeilen in Ihrer Abfrage abgerufen werden und wie viele für die Ausgabe benötigt werden. Sie können auch zum logischen Abfrageplan gehen und den Arbeitsfluss innerhalb der Berechnung verfolgen.
Was ist DAX Studio in LuckyTemplates Desktop?
DAX-Tutorial: Kontext und die Berechnungs-Engine.
Kennzahl in LuckyTemplates: Optimierungstipps und -techniken
Abschluss
Die Materialisierung erfolgt, wenn Ihre Abfragen Spalten oder Zeilen aus Ihrem Datenmodell abrufen. Dieser Vorgang erfolgt auf natürliche Weise, wenn Ihre Engine Daten aus Ihrem Datenmodell erhält, um Ergebnisse für Ihre Abfrage bereitzustellen.
Es können jedoch Probleme auftreten, wenn Ihr DAX zu viele Zeilen abruft, als für das Ergebnis erforderlich sind. Dieses Problem kann gelöst werden, indem Sie Ihren DAX für die Ausführung bestimmter Prozesse vereinfachen.
In diesem Tutorial erfahren Sie, wie Sie mit Charticulator eine Streudiagramm-Visualisierung für Ihren LuckyTemplates-Bericht erstellen und entwerfen.
Erfahren Sie, wie Sie ein PowerApps-Suchfeld von Grund auf erstellen und es an das Gesamtthema Ihrer App anpassen.
Erlernen Sie ganz einfach zwei komplizierte Power Automate String-Funktionen, die in Microsoft Flows verwendet werden können – die Funktionen substring und indexOf.
Dieses Tutorial konzentriert sich auf die Power Query M-Funktion „number.mod“, um ein abwechselndes 0-1-Muster in der Datumstabelle zu erstellen.
In diesem Tutorial führe ich eine Prognosetechnik durch, bei der ich meine tatsächlichen Ergebnisse mit meinen Prognosen vergleiche und sie kumulativ betrachte.
In diesem Blog erfahren Sie, wie Sie mit Power Automate E-Mail-Anhänge automatisch in SharePoint speichern und E-Mails anschließend löschen.
Erfahren Sie, wie die Do Until Schleifensteuerung in Power Automate funktioniert und welche Schritte zur Implementierung erforderlich sind.
In diesem Tutorial erfahren Sie, wie Sie mithilfe der ALLSELECTED-Funktion einen dynamischen gleitenden Durchschnitt in LuckyTemplates berechnen können.
Durch diesen Artikel erhalten wir ein klares und besseres Verständnis für die dynamische Berechnung einer laufenden oder kumulativen Gesamtsumme in LuckyTemplates.
Erfahren und verstehen Sie die Bedeutung und ordnungsgemäße Verwendung der Power Automate-Aktionssteuerung „Auf jede anwenden“ in unseren Microsoft-Workflows.