Im letzten Artikel haben wir gesehen, was Star-Schemas sind. Was aber, wenn wir die Daten nur flach zur Verfügung gestellt bekommen? Man kann es sich nicht immer aussuchen – manchmal liegen Daten in einem flachen Format vor. Dimensionen und Fakten sind gemischt. Die Daten sehen beispielsweise so aus (die Pfeile sind Tabulatoren):
Import ins Datenmodell
Zuerst importieren wir die Daten in unser Power Pivot Datenmodell: Rot markiert sind die Daten, die wir als Fakten verwenden wollen, grün die Dimensionsdaten. Tatsächlich haben wir drei verschiedene Dimensionen:
- Online-Order-Flag (War das eine Online-Bestellung?)
- Informationen über den Kunden (AccountNumber, Firstname, LastName)
- Artikelinformationen (ProductNumber, Name)
Daten aus dem Modell importieren
Zuerst trennen wir die Dimensionsdaten der Artikel vom Rest der Daten – also die Spalten ProductNumber und Name. Dazu importieren wir Daten aus dem Datenmodell in eine Excel-Arbeitsmappe – ganz ohne Pivot-Table oder Pivot-Chart. Dazu wechseln wir in die Arbeitsmappe und dort im Menü auf den Reiter Daten: Dort sind alle Datenverbindung, also auch zu der Textdatei: Wir wählen die Verbindung zu der Textdatei – mit Öffnen wird eine Tabelle mit allen Daten angelegt:
Evaluate – das DAX-Select
Via Kontextmenü in der neuen Tabelle können wir die Abfrage beeinflussen: Man kann hier tatsächlich via DAX die Abfrageergebnisse ändern – in einem zugegebenermaßen noch recht dürftigen Dialog: Der Abfragetyp ist auf Tabelle eingestellt – das ändern wir auf DAX. Alle DAX-Abfrage fangen mit dem Schlüsselwort Evaluate an – ein bisschen wie Select bei SQL. Dann verwenden wir die Funktion Summarize – diese ist ein bisschen wie Group By in SQL. Würden wir nur die Spalten ProductNumber und Name abfragen, hätten wir viele Dubletten drin – via Summarize werden diese eliminiert. Der ganze Ausdruck lautet dann:
Mit Schließen des Dialogs ändert sich automatisch die Tabelle – übrig bleiben nur noch die Artikelnummer und Artikelbeschreibungen ohne Dubletten – also genau die Information, die wir für eine Dimension erwarten:
Re-Import in das Datenmodell
Jetzt reimportieren wir die Daten zurück in das Datenmodell – im Reiter Power Pivot und dort via Zu Datenmodell hinzufügen (beschrieben im Artikel Daten erweitern). Das gleiche machen wir mit den Fakten sowie der Dimension Customer: Die ehemalige Sales-Tabelle können wir ignorieren – löschen dürfen wir sie nicht, da sie die Originaldaten enthält. Auch die Aktualisierung funktioniert – wenn sich die Ausgangsdaten in der Textdatei geändert haben, aktualisiert der Update-Mechanismus alle Abhängigkeiten. Es gibt noch einen anderen Weg – der Weg via Power Query. Dieser ist dann Inhalt des nächsten Artikels.
Kommentar hinterlassen