„Materialize“ ist ein Datenbankkonzept, das sich auf die Speicherung des Ergebnisses einer Abfrage bezieht, oft in Verbindung mit einem SQL-View. Der Vorteil hierbei ist, dass Sie bei Verwendung der Ergebnismenge gespeicherte Werte abfragen können, anstatt Berechnungen durchführen zu müssen, was in der Regel zu einer erheblichen Verbesserung der Antwortzeit führt.
Kürzlich bat uns ein Kunde, DAX-Berechnungen in einem Power BI-Modell für sein Data Warehouse zu „materialisieren“. In diesem Blog werde ich einen sehr einfachen Ansatz vorstellen, um dies zu realisieren.
Eine wichtige Voraussetzung hierfür ist das Verständnis der Natur von DAX-Berechnungen: Diese sind – entgegen der landläufigen Meinung – nicht mit einer Tabelle in Power BI verknüpft, sondern ein „freistehendes“ semantisches Konzept, das mit jeder Tabelle des Modells verknüpft werden kann (auch mit einer berechneten – dazu später mehr).
Die Ergebnisse einer DAX-Berechnung existieren nur in Verbindung mit einer Abfrage oder Tabelle, daher müssen wir uns mit deren Materialisierung befassen.
In der Regel haben Sie in Power BI 2 Möglichkeiten: Entweder Sie erstellen eine berechnete Tabelle oder Sie fügen eine berechnete Spalte mit der/den Kennzahl(en) hinzu, die Sie materialisieren möchten.
Bei diesem Ansatz wird eine DAX-Kennzahl wie SELECTEDCOLUMNS() verwendet, um eine Kennzahlentabelle mit Spalten aus der Quelltabelle zu erstellen, die Sie für die Kennzahl und die Kennzahl(en) verwenden möchten:
Bei diesem Ansatz wird einfach eine berechnete Spalte zu der Tabelle hinzugefügt, in der Sie materialisieren möchten:
Ein einfacher Ansatz zur Materialisierung einer der beiden Ergebnismengen besteht darin, die Tabellendatei zu exportieren und sie dorthin zu laden, wo Sie die materialisierten Ergebnisse benötigen.
Eine elegantere und automatisierte Methode ist das Acterys Power BI Sync External Tool, das unter folgendem Link heruntergeladen werden kann: https://landing.acterys.com/power-bi-sync. Die Installation dauert nur wenige Sekunden.
Nach der Installation können Sie einfach die Zugriffsdetails Ihres Zielservers konfigurieren, auf dem Sie die materialisierten Tabellen speichern möchten, und dann einfach darauf zeigen und auf exportieren klicken:
Power BI Sync ermöglicht es Ihnen auch, diese Aufgabe zu automatisieren und den Ladevorgang in einem bestimmten Zeitintervall durchzuführen:
Mit einem Acterys-Abonnement ist diese Tabelle dann auch sofort „write back“-fähig und kann mit allen Planungsfunktionen, die in der Lösung enthalten sind, genutzt werden:
© 2024 Managility Pty Ltd All rights reserved.