Power Query Das Werkzeug, um Daten ins Power BI-System zu bringen - THE SELF-SERVICE-BI BLOG

Die Seite wird erstellt Haimo-Haio Stoll
 
WEITER LESEN
Power Query Das Werkzeug, um Daten ins Power BI-System zu bringen - THE SELF-SERVICE-BI BLOG
Power Query
         POWER QUERY

                                              Das Werkzeug, um Daten ins Power BI-System zu bringen.
                                              Lars Schreiber / Imke Feldmann

                                                                                                                      ©XYZproject – www.istockphoto.com

     In der letzten Ausgabe haben wir einen           abschlüssen wertvolle Zeitersparnis brin-     lierte Sprachen aus dem Data-Science-Be-
     Überblick zu Microsof ts moderne Daten-          gen und gleichzeitig die Qualität der         reich wie Python oder R mit einbinden.
     analyse-Plattform Power BI gegeben. In die-      Abschlüsse verbessern.                        Damit könnten ggf. bereits bestehende
     sem und nachfolgenden Artikeln werden                                                          Lösungen schnell in Power BI integriert
     wir Ihnen deren einzelne Bestandteile de-        Die Bedienung ist sehr benutzerfreundlich     werden oder auf bestehende Module mit
     taillierter näherbringen. Der aktuelle Artikel   gestaltet und man kann sehr viele Schritte    z.T. komplexen Berechnungen zurückge-
     beschreibt Zweck und Funktionsweise der          mit Mausklicks erledigen. Sind jedoch fort-   grif fen werden, ohne das Rad neu erfin-
     Komponente Power Query.                          geschrittene Operationen notwendig, für       den zu müssen. Außerdem kann man sich
                                                      die es keine Schaltflächen auf der Benut-     aus Power Query heraus mit Webdiensten
     Ein flexibles Endnutzer-                         zeroberfläche gibt, kann man die beste-       verbinden, die Teile der Transformationen
     Werkzeug für Datenimport                         hende Lösung reibungslos mithilfe von         übernehmen oder anreichern, wie z.B.
                                                      Code anpassen (man sprich hier auch von       Übersetzungen oder Anwendungen
     und -transformation                              einer „No code, low code“-Umgebung). Die      künstlicher Intelligenz. Für Nutzer des Li-
     Power Query ist eine Komponente in Power         hier verwendete Sprache nennt sich „Power     zenzmodells Power BI Premium stellt Mic-
     BI, mit der man Daten aus zahlreichen            Query M formula language“, auch kurz „M“      rosoft einige seiner Cognitive Services so-
     Quellsystemen importieren und bereini-           genannt. Es dürf te u. a. der einfachen Be-   wie Azure Machine Learning bereits voll
     gen, filtern, umformen oder anderweitig          nutzbarkeit von Power Query zu verdanken      integriert über die Benutzeroberfläche zur
     bearbeiten kann, bevor man sie in das Po-        sein, dass dieses Werkzeug mittlerweile in    Verfügung.
     wer BI-Datenmodell lädt. Dabei sind die er-      vielen Microsof t-Programmen Verwen-
     stellten Schritte jederzeit auf Basis einer      dung findet. Wir beziehen uns im vorlie-      Die Verbindung zu Webdiensten öffnet da-
     neuen Datenlage wiederholt ausführbar.           genden Artikel auf Power Query in Power       rüber hinaus auch das Tor zur Prozessauto-
     Manuelles aufwändiges und of t fehleran-         BI Desktop.                                   matisierung, denn darüber lassen sich bei-
     fälliges „Copy & Paste“ wird so effektiv ver-                                                  spielweise auch Flows in Power Automate
     mieden. Dies kann gerade bei zeitkriti-          Power Query ist auch für andere Systeme       starten, wenn manche Daten bestimmten
     schen Prozessen wie Monats- oder Jahres-         offen. So kann man in Power BI z.B. etab-     Anforderungen nicht genügen.

24   Controller Magazin | Ausgabe 2
Power Query Das Werkzeug, um Daten ins Power BI-System zu bringen - THE SELF-SERVICE-BI BLOG
PRAXIS

Abb. 1: Grafische Nutzeroberfläche von Power Query in Power BI Desktop

Import von Daten
Der Import von Daten stellt i.d.R. den ers-
ten Schritt beim Erstellen einer Power BI-
Lösung dar. Ein Mausklick auf „Daten abru-
fen“ eröffnet Zugang zu über 100 verschie-
denen Datenkonnektoren wie z.B. Excel,
SQL Server, SharePoint, Internetseiten
u.v.m.

Tabellenimport
Sobald man sich zur Datenquelle verbun-
den hat, erhält man eine Auswahl der vor-
handenen Objekte. Bei einer Datenbank er-
scheinen die Tabellen und Sichten und
wenn man sich mit Excel verbindet, sieht            Abb. 2: Mehrere Dateien aus Ordnern importieren und mit einer gemeinsamen Funktion umwandeln
man die Liste der vorhandenen Arbeitsblät-
ter und Tabellen. Daraus kann man sich eine
oder mehrere Tabellen auswählen und er-
hält als nächstes eine Vorschau der ersten
Tabellenzeilen der jeweiligen Objekte. Zu-
sätzlich kann man sich die Profile der einzel-
nen Spalten grafisch anzeigen lassen und In-
dikatoren für die Datenqualität erhalten:
Dadurch kann man Probleme oder Unregel-
mäßigkeiten mit den Quelldaten schnell er-
kennen und erhält eine gute Ausgangsbasis,
um notwendige Bereinigungen durchführen
zu können.

Sobald die Daten importiert und ggf. trans-
formiert wurden, kann die Abfrage gespei-
chert und die Daten in das Datenmodell ge-
laden werden. Sollten sich die Quelldaten
ändern und man möchte den aktuellen
Stand abrufen, lässt sich die Abfrage einfach
erneut aufrufen. Dann wird die Datenquelle
erneut geladen und die in der Abfrage abge-         Abb. 3: Import von Daten aus dem Internet durch Assistenten unterstützt

                                                                                                                              Controller Magazin | Ausgabe 2   25
Power Query Das Werkzeug, um Daten ins Power BI-System zu bringen - THE SELF-SERVICE-BI BLOG
PRAXIS

     Abb. 4: Menüleisten ähneln dem gewohnten Office-Format

     Abb. 5: Jeder Schritt wird mit M-Code aufgezeichnet

                                                                                      speicherten Schritte erneut ausgeführt,
                                                                                      diesmal eben auf Basis der aktuellen Daten.
                                                                                      Das bedeutet, dass man keinerlei zusätzli-
                                                                                      che Schritte unternehmen muss, um regel-
                                                                                      mäßig aktuelle Daten im System zu haben,
                                                                                      außer die Datenaktualisierung anzustoßen.
                                                                                      Zusätzliche, geänderte oder gelöschte Da-
                                                                                      ten bzw. Tabellenzeilen werden automatisch
                                                                                      auf den neuesten Stand gebracht.

                                                                                      Import aus Ordnern
                                                                                      Häufig ist es jedoch so, dass neue Daten in
                                                                                      der Datenquelle nicht als zusätzliche Zeilen
                                                                                      in einer vorhandenen Tabelle geführt wer-
                                                                                      den, sondern in neuen Dateien abgespei-
                                                                                      chert werden. Hat man beispielsweise für je-
                                                                                      den Monat eine neue Datei und haben diese
                                                                                      Dateien einen jeweils identischen Aufbau
                                                                                      (Spaltenlayout), dann kann man die Funktio-
                                                                                      nalität „Import aus Ordner“ verwenden. Die-
                                                                                      ser Modus sorgt dafür, dass alle ausgewähl-
                                                                                      ten Dateien eines Ordners (falls gewünscht
                                                                                      inkl. Unterordner) importiert werden. Dann
                                                                                      erhält man die Möglichkeit, sämtliche Trans-
                                                                                      formationen, die man durchführen möchte,
     Abb. 6 Kreuztabellenform für die Analyse vs. Datensatzform für das Datenmodell   in einer Abfrage zu erstellen.

26   Controller Magazin | Ausgabe 2
Power Query Das Werkzeug, um Daten ins Power BI-System zu bringen - THE SELF-SERVICE-BI BLOG
PRAXIS

Die Schritte, die in dieser Abfrage definiert wurden,       schen. Ebenso lassen sich Schritte zwischen bestehen-
werden dann automatisch auf alle anderen importier-         den Schritten einfügen. Sehr viele Operationen, die
ten Dateien angewendet. So wird eine einheitliche           man aus Excel kennt, kann man auch in Power Query
Transformation für sämtliche Daten gewährleistet. Da-       vornehmen. Mathematische Operationen, Format-
nach kann man die Daten mit einem Mausklick in einer        konvertierung, Suchen, Filtern, Verketten u.v.m. Darü-
großen Gesamttabelle zusammenfassen, die dann               ber hinaus bietet Power Query jedoch auch nützliche
über das Monatsfeld unterscheidbar wird. Und auch           Funktionalitäten, die man aus Excel so nicht kennt
hier handelt es sich um eine nachhaltige Lösung: Kom-       und für die man in Excel aufwändig VBA programmie-
men neue Dateien in diesem Ordner dazu, werden die-         ren müsste:
                                                                                                                                    Dipl.-Kfm. (FH) Lars
se automatisch bei der nächsten Datenaktualisierung                                                                                      Schreiber
in Power BI berücksichtigt.                                 Entpivotieren
                                                            Während beim Pivotieren Feldattribute in Spaltenüber-                 ist freiberuflicher Berater,
Importe nicht nur auf Tabellen beschränkt                   schriften verwandelt werden, geschieht beim Entpivotie-               Entwickler und Trainer für
Auch für Daten, die nicht in Tabellenform vorliegen, gibt   ren genau das Gegenteil: Spaltenüberschriften werden                      Microsoft Power BI,
                                                                                                                                  Microsoft MVP, Hamburg.
es Standardkonnektoren. Textdateien können eingele-         zu Werten in einzelnen Zeilen. So ein Schritt ist häufig er-                Lars@ssbi-blog.de
sen werden und sofern sie einer festgelegten Struktur       forderlich, um die Daten in das für das Power BI-Daten-
folgen, kann man auch hier Extrakte in Tabellenform         modell erforderliche Format zu konvertieren. Hat man
überführen. Für Importe aus dem Internet gibt es sogar      z.B. eine Tabelle, in der für jeden Monatswert eine neue
einen Assistenten, der die Auswahl der auszulesenden        Spalte erzeugt wurde, kann man durch Entpivotieren
Daten grafisch unterstützt: Man klickt die Elemente an,     eine 2-spaltige Tabelle erzeugen: Die erste Spalte enthält
die man haben möchte und gibt ihnen einen Feldnamen.        die Monatsnamen und die zweite die entsprechenden
Diese Zuordnung kann man danach auf eine Liste von          Werte.
Webseiten anwenden, die gleichartig gestaltet sind und
man erhält eine strukturierte Zusammenfassung der In-       SQL-Joins und Union
formationen von mehreren Webseiten, die sich regelmä-       Häufig besteht die Notwendigkeit, existierende Tabel-
ßig aktualisieren lässt.                                    len um Daten aus anderen Tabellen anzureichern. Excel
                                                            verfügt über die Funktionen SVERWEIS oder INDEX/
                                                                                                                                       Dipl.-Kffr. Imke
Sollte sich die benötigte Datenquelle nicht unter den       VERGLEICH, um Werte aus verschiedenen Tabellen mit-                          Feldmann
vorhandenen Datenkonnektoren befinden, kann man             einander in Beziehung zu bringen. Power Query verfügt
sich einen eigenen Konnektor schreiben (lassen). Viele      über ähnliche Optionen, deren Funktionalität jedoch                  ist freiberufliche Beraterin,
solcher sog. “custom connectors” kann man sich aber         sehr nah an SQL JOINS angelehnt ist. So wird beispiels-               Entwicklerin und Trainerin
                                                                                                                                 für Microsoft Power BI und
auch bereits aus dem Internet herunterladen, wie z.B. für   weise bei einem LEFT OUTER JOIN, der in der rechten
                                                                                                                                        Microsoft MVP.
die Microsoft Graph API, mit der man an zahlreiche Of-      Tabelle mehrere Entsprechungen findet, ungleich zum                    info@thebiccountant.com
fice 365-Objekte herankommt.                                SVERWEIS nicht nur der erste gefundene Wert zurück-
                                                            gegeben, sondern alle Werte. Sehr nützlich sind auch
Häufig ist es jedoch nicht damit getan, sich nur einfach    INNER JOINS, mit denen man effizient Schnittmengen
mit den Daten des Quellsystems zu verbinden, denn die       mehrerer Tabellen bilden kann und LEFT ANTI JOINS
Daten sind mitunter in ihrer ursprünglichen Form nicht      z.B., der nur solche Zeilen enthält, die es in der anderen
für die Weiterverarbeitung in Power BI geeignet. So kann    Tabelle nicht gibt. Dies erleichtert z.B. Kontenabstim-
es erforderlich sein, dass die Datenstruktur angepasst      mungen enorm.
werden muss oder inhaltliche Änderungen vorgenom-
men werden müssen. Power Query bietet dafür umfang-         Unterstützung durch Künstliche Intelligenz
reiche Transformationsmöglichkeiten.                        Manchmal hat man es mit Daten zu tun, bei denen man
                                                            gar nicht so richtig weiß, welche Schritte man anwenden
Transformationen                                            muss, um an die gewünschten Ergebnisse zu kommen.
                                                            Hier helfen dann Funktionalitäten, die Algorithmen aus
Nachdem man die Daten in Power Query importiert hat         der künstlichen Intelligenz anwenden. „Spalte aus Bei-
und die Vorschau sieht, kann man Transformationen           spielen“ z.B. ermöglicht die Extraktion von Werten aus
durchführen. Dies kann für viele Zwecke über die grafi-     einer Spalte anhand von einigen richtigen Trainingswer-
sche Oberfläche mit Mausklicks durchgeführt werden.         ten. Werden die Muster daraus richtig erkannt, können
Die Menüs sind an die Office-Programme angelehnt:           diese automatisch auf die restlichen Werte angewendet
                                                            werden. Typische Anwendungsfälle hierfür sind Aufsplit-
Jeder Mausklick wird dabei aufgezeichnet (ähnlich wie       tung von Adressen, die in einem einzigen Feld erfasst
beim VBA-Makro-Rekorder) und ist als einzelner Schritt      wurden. Ein großer Vorteil hierbei ist, dass die Logik der
unter „Angewendete Schritte“ sichtbar:                      künstlichen Intelligenz nicht im Verborgenen bleibt, son-
                                                            dern durch M-Code dokumentiert wird. So kann man
So kann man jederzeit zu einem früheren Schritt zu-         den erzeugten Code überprüfen und falls nötig, manuell
rückgehen und ihn ggf. modifizieren oder auch lö-           anpassen.

                                                                                                                           Controller Magazin | Ausgabe 2   27
Power Query Das Werkzeug, um Daten ins Power BI-System zu bringen - THE SELF-SERVICE-BI BLOG
PRAXIS

     Abb. 7: Neue Diagrammsicht stellt Transformationen komfortabel und anschaulich dar

     Einmal definieren, mehrfach verwenden               Darüber hinaus kann man auch einfach           zuerst in Power BI Desktop gesehen. Dies
     Nicht selten bestehen Transformationen              komplette Abfragen per Copy & Paste aus        hat sich jüngst allerdings etwas geändert
     aus mehreren Schritten, die man auch ger-           einer Power BI-Datei in andere Anwendun-       und einige neue beeindruckende Features
     ne für andere Zwecke wiederverwenden                gen kopieren, die Power Query verwenden.       sind zuerst in Dataflows - der Power Query-
     möchte. Hat man z.B. eine Lösung gefun-             Viele solcher Funktionen kann man sich         Online-Version - aufgetaucht: Die Dia-
     den, die einem die Anzahl der Werktage              auch schon im Internet herunterladen, wie      grammsicht z.B., in der nicht nur die Bezie-
     zwischen einem Anfangs- und Enddatum                z.B. hier: https://bit.ly/3nNyyVO .            hungen der einzelnen Abfragen zueinander
     ausrechnet, möchte man diese Logik viel-                                                           abgebildet und modifiziert werden, sondern
     leicht auch in einer anderen Abfrage, Pow-          Einmal lernen, mehrfach anwenden               auch einzelne Schritte innerhalb der Abfra-
     er BI-Datei oder auch in Power Query in Ex-         Power Query wurde auch noch in zahlreiche      gen angezeigt werden können:
     cel verwenden. Hierfür bietet Power Query           andere Microsof t-Programme integriert,
     eine sehr komfortable Möglichkeit, diese            wie z.B. Excel, Dataverse (ehemals Common      Fazit
     Logik in eine eigene Funktion zu überfüh-           Data Service), Azure Data Factory (dort als
     ren. Diese könnte das Anfangs- und End-             “Wrangling dataflows” bezeichnet) sowie in     Power Query ermöglicht es Fachanwendern,
     datum als Parameter verwenden, die man              den SQL-Konnektor in Power Automate (ehe-      regelmäßig wiederholbare Prozeduren zu
     dann mit individuellen Werten aus der               mals „Flow“). Der Funktionsumfang von Po-      entwickeln, die Daten aus unterschiedlichen
     neuen Umgebung füllt.                               wer Query ist in diesen anderen Anwendun-      Quellsystemen laden, bereinigen und um-
                                                         gen aktuell jedoch mehr oder weniger ein-      formen. Dadurch lässt sich ein hoher Auto-
                                                         geschränkt, verglichen zu den hier beschrie-   matisierungsgrad für wiederkehrende Tätig-
                                                         benen Funktionen von Power Query in            keiten erreichen, der nicht nur viel Zeit spa-
                                                         Power BI Desktop.                              ren sondern auch helfen kann, Fehler zu ver-
                                                                                                        meiden.
                                                         In Power BI gibt es darüber hinaus auch eine
         Summary                                         Power Query Anwendung in der Cloud, die        Viele Transformationen können über benut-
                                                         sich Dataflows nennt. Dort kann man die Er-    zerfreundliche Schaltflächen in einer grafi-
         Power Query ist eine Komponente in Po-
                                                         gebnisse der Transformationen in allgemein     schen Oberfläche durchgeführt werden. Für
         wer BI, mit der man Daten aus Quellsys-
                                                         zugänglichen Zielen wie dem Azure Data         fortgeschrittene Anforderungen stehen In-
         temen importieren, bereinigen, filtern,
                                                         Lake Storage oder Dataverse abspeichern.       tegrationen mit anderen Lösungen und eine
         umformen oder anderweitig bearbeiten
                                                         Dadurch stehen diese Daten dann auch an-       leistungsfähige Programmiersprache voll in-
         kann, bevor man sie in das Power BI-Da-
                                                         deren Programmen zur Verfügung. Aber           tegriert zur Verfügung. So erhält man eine
         tenmodell lädt. Das ermöglicht Fachan-
                                                         auch hier gibt es noch Einschränkungen im      saubere Datenbasis für das Power BI-Daten-
         wendern, regelmäßig wiederholbare Pro-
                                                         Funktionsumfang.                               modell, welches wir in der nächsten Ausga-
         zeduren zu entwickeln, die Daten aus un-
                                                                                                        be präsentieren werden. ⬛
         terschiedlichen Quellsystemen laden, be-
         reinigen und umformen. Das ermöglicht
                                                         Ausblick
         einen hohen Automatisierungsgrad für
                                                         Power Query wird von Microsof t intensiv
         wiederkehrende Tätigkeiten, der nicht
                                                         weiterentwickelt und nicht nur mit zusätzli-
         nur viel Zeit sparen sondern auch helfen
                                                         chen Funktionalitäten ausgestattet, sondern
         kann, Fehler zu vermeiden.
                                                         auch in weitere Anwendungen integriert.
                                                         Bislang haben wir die Neuigkeiten immer

28   Controller Magazin | Ausgabe 2
Power Query Das Werkzeug, um Daten ins Power BI-System zu bringen - THE SELF-SERVICE-BI BLOG
Sie können auch lesen