Prognosen spielen in der modernen Energiewirtschaft eine zentrale Rolle. Ob die prognostizierten Werte auf Wetterdaten, bilanziellen Berechnungen oder einer anderen Basis ermittelt wurden, ist von untergeordneter Relevanz. In diesem Beitrag wird die prinzipielle Möglichkeit betrachtet, mit Power BI die prognostizierten mit korrelierenden Ist-Zeitreihen zu vergleichen, um die Prognosegüte zu bestimmen. Das vorgestellte Vorgehen ist exemplarisch zu betrachten. Eigene Anforderungen können von den hier vorgestellten Rahmenbedingungen abweichen.
Der Artikel zeigt die Möglichkeiten von Power BI und dessen Potenzial auf, erhebt aber keinen Anspruch auf eine vollständige Abbildung dieses Themenkomplexes. Power BI kann mit seinen inzwischen über 300 fertigen Konnektoren einen einfachen Zugang zu den zu vergleichenden Daten herstellen und ist damit ein wichtiger Baustein in der vorgestellten Lösung. Ein Blick auf den Funktionsumfang von Power BI lohnt sich auf jeden Fall.
Datenquellen
Unsere Quelldaten liegen in einer klassischen, relationalen Datenbank; konkret ist das ein SQL Server 2019. Die Art der Speicherung spielt aufgrund der Anzahl an Konnektoren aber keine wesentliche Rolle.
Die Ablage und die Speicherung von Zeitreihen ist naturgemäß applikationsspezifisch. Trotzdem sollen in aller Kürze zwei Varianten unterschieden werden:
- Zeitreihen basierte Ablage
- Zeitscheiben basierte Ablage
Bei den Zeitreihen werden die Messwerte, z. B. die 15-Minuten-Werte in der Elektrizität, als einzelne Zeilen in einer Tabelle gespeichert, d. h. eine Zeile für den Wert für 10:00 Uhr, eine weitere Zeile für den Wert 10:15 Uhr usw. Bei der Zeitscheiben Variante werden die 15 min Werte als Spalten eines Tages gespeichert. Unser Beispiel nutzt Quelldaten, die im Zeitreihen-Format abgelegt sind. Eine Transformation zwischen den unterschiedlichen Formaten ist in Power BI aber problemlos - "Stichwort Transponieren" - möglich.
Die folgende Abbildung zeigt die verwendete Tabellenstruktur, basierend auf Stundenwerten.
Es ist zu beachten, dass zu einem Stundenwert, der Uhrzeit, mehrere Werte gespeichert sein können, d.h. zum 8:00 Uhr Wert vom 14.06.2018 können mehrere Werte gespeichert worden sein. Der Wert in der Spalte "Stored" ist dann unterschiedlich.
Power BI bietet die Möglichkeit frei definierbare SQL Statements für die Abfrage bzw. Anbindung von SQL Datenquellen zu nutzen. Diese Option wird hier verwendet, um den jeweils aktuellsten Wert zu ermitteln.
Ohne weiteren Kontext sind die Zeitreihen nicht nutzbar. Um den Kontext herzustellen werden weitere Tabellen gelesen. Wie die Kontextdaten oder auch Referenzdaten gespeichert sind, spielt keine Rolle. Beispiele wären hier CSV, als Excel-Dateien oder in einer anderen relationalen Datenbank. Im konkreten Fall werden die Referenzdaten aus anderen Tabellen der Zeitreihen-Datenbank und einer weiteren, externen Datenbank gelesen. Das resultierende Datenmodell ist unten zu sehen. Neben der Faktentabelle TimeSeries4SSAS sind die Dimensionstabellen Process, Item und nachgelagerte Partner vorhanden. Ergänzt werden Sie mit dem Kalender und der Stundenabbildung über den Tag. Summa Summarum ergibt sich ein klassisches Stern-Schema.
Prognosegüte über Differenzbildung
Die Prognosegüte wird über die Größe der Differenz zwischen vorläufigen und endgültigen Werten festgestellt. Die Abgrenzung zwischen vorläufigen und endgültigen Werten erfolgt über das Attribut MsgType in der Tabelle Items, d.h. eine komplette Zeitreihe enthält vorläufige oder endgültige Werte. Zudem umfassen die vorläufigen Zeitreihen nicht den kompletten Tag.
Diese Rahmenbedingungen müssen bei der Differenzermittlung beachtet werden. Es werden Measures definiert, die ermitteln, ob ein vorläufiger Wert vorhanden ist. Erst dann findet die Differenzermittlung statt. Dadurch stimmen die Aggregatstufen Tag und Monat nicht direkt mit den Quellen überein, aber die Werte bzw. Summen können in der Oberfläche nachvollzogen werden.
Zusätzlich werden Measures für Maximalwerte des Tages und der Stunde definiert sowie die zugehörigen Zeitstempel. Das soll die Orientierung für den Benutzer vereinfachen.
Visualisierung
Wie bereits oben gezeigt nutzt die Startseite eine listenartige Darstellung zum Einstieg. Im Kopfbereich der Seite sind so genannte Slicer zum Filtern des Datenbestandes zu finden. Im rechten Bereich findet man die für Power BI typischen Filter Bereiche, die ergänzend und sogar ersetzend zum klassischen Slicer genutzt werden können. Die weitere Erläuterung der Power BI Funktion wird an dieser Stelle übersprungen.
Den Hauptbereich nimmt das Matrix-Visual ein: Hier werden in unserem Fall die Partner als Zeilen verwendet. Weitere Hierarchieebenen können wahlweise zur Detailierung genutzt werden. Als Spalte wird der Monat genutzt. Die Werte umfassen den vorläufigen und endgültigen Wert sowie die Differenz als Zahl und die prozentuale Abweichung.
Drillthrough
Um eine weitere Detaillierung zu erzielen, können im Power BI die einzelnen Seiten eines Reports miteinander verbunden werden. Per Drillthrough gelangt der Benutzer weiter zur Tagesansicht.
Hier erkennt man, dass die Abweichung von einem einzelnen Tag herrührt und kein prinzipielles Problem vorliegt. Über einen weiteren Drillthrough geht es weiter in die Tagessicht.
Die Karten zeigen direkt die maximale Abweichung und den Zeitpunkt des Maximums. Im unteren Bereich sind die weiteren Attribute ID1 und ID2 aufgetragen. In der grafischen Darstellung ragt der Fehler deutlich heraus. Bei der Anwahl wird automatisch auf den selektierten Wert gefiltert.
Alternativ soll ein weiterer Fall betrachtet werden, der dauerhaft eine schlechte Prognosegüte aufweist und nicht punktuell wie im geschilderten Beispiel.
Für jeden Tag liegen hier erhebliche Abweichungen vor. Im Balkendiagramm unten rechts ist ersichtlich, dass eine einzelne ID deutlich heraussticht. Trotzdem sind weitere IDs von der schlechten Prognosegüte betroffen sind.
Fazit
Dieser Artikel hat in aller Kürze den groben Lösungsaufbau für eine Power BI basierte Analyse von Zeitreihen skizziert. Power BI kann mit seiner leistungsfähigen Infrastruktur dort ansetzen, wo existierende Applikationen an ihre Grenzen stoßen.
Die Möglichkeit große Datenmengen - und hier sind nicht nur 6 Millionen Datensätze gemeint - auszuwerten, gepaart mit erstklassigen Darstellungsoptionen, sind eine interessante Kombination. Mit Lizenzkosten von knapp 10 EUR pro Benutzer und Monat für die Nutzung von Power BI handelt es sich um ein ausgesprochen interessantes Angebot. Es sollte dabei als sinnvolle Ergänzung der bestehenden Applikationslandschaft und als Schritt in die Zukunft betrachtet werden.