Realtime Dashboards in Power BI – Einfacher Einstieg mit den PubNub Datenstreams

Realtime Dashboards sind in Verbindung mit Sensoren (Internet of Things), Börsenkursen, Social Media usw. ein sehr zukunftsträchtiges Einsatzgebiet für Power BI um die generierten Datenströme zu visualisieren und daraus Schlüsse ziehen zu können.

Ist der Datenstream erst einmal online, ist die Auswertung in Power BI  verblüffend einfach. Das Startup PubNub bietet mit seinen fertigen Datenstreams eine tolle Möglichkeit, um die Realtime Funktionalität in Power BI ohne Rüstaufwand testen zu können.

Zielsetzung

Dieser Blogpost liefert einen ersten, einfachen Einstieg in das Thema Realtime Dashboards in Power BI bevor in weiteren Blogposts tiefer in die Materie eingegangen wird. Ziel ist es, ein im Sekundentakt automatisch rollierendes Dashboard für 3 Umweltvariablen der Stadt San Francisco aufzubauen. Dieser Datenstream steht kostenlos bei PubNub zur Verfügung.

1. Streaming Dataset im Power BI Service erstellen

Die Anlage eines Streaming Datasets ist derzeit nur im Power BI Service - und nicht in Power BI Desktop - möglich, die Anlage erfolgt über die Funktion Create -> Streaming Dataset:

Derzeit stehen 3 unterschiedliche Streaming Datenquellen zur Verfügung: API, Azure Stream und PubNub. PubNub ist ein von Microsoft unabhängiger Anbieter im IoT-Umfeld und hat den besonderen Vorteil, daß hier fertige Demo-Streams für den Test der Funktionalität in Power BI zur Verfügung stehen.

Daher PubNub auswählen ...

... und die Verbindungsinformationen für die Demo-Streams eingeben (derzeit Sub-key mspowerbi und Channel name sensor-network):

Es werden für mehrere Orte jeweils 6 Umweltindikatoren angeboten ...

... für unsere Demo reduzieren wir die Auswahl auf die Indikatoren für San Francisco und Honolulu (wobei wir nur erstere verwenden werden). Sehr wichtig ist das Feld timestamp, da dieses für die Belegung der Achse der Charts benötigt wird:

Das Streaming Dataset Realtime PubNub ist jetzt fertig angelegt und kann für Visualisierungen als Datenbasis verwendet werden. Konfigurationsmöglichkeiten gibt es keine, da in einem Streaming Dataset kein Datamodel und daher auch keine Beziehungen und keine Measures enthalten sind. Die Aktualisierung erfolgt per definition in Echtzeit aus dem Stream, ein Berechtigungssystem (Row-Level-Security) ist ebenfalls nicht verfügbar.

2. Dashboard mit Echtzeitaktualisierung im Power BI Service erstellen

Die Echtzeitaktualisierung von Visuals steht derzeit nur in Dashboards (und nicht in Reports) im Power BI Service zur Verfügung. Eine Verbindung mit Power BI Desktop zu einem Streaming Dataset ist ebenfalls (mangels Datamodel) nicht möglich. Zur Erstellung eines neuen Dashboards kann die Funktion Create -> Dashboard verwendet werden:

Wir verwenden den gleichen Namen für das Dashboard wie für das Streaming Dataset, das ist keine technische Voraussetzung aber es ist dann einfacher zu erkennen, welches Dashboard aus welchem Dataset gespeist wird:

Im Dashboard wird jetzt mit der Funktion Add tile -> Custom Streaming Data ein neues streamingfähiges Visual hinzugefügt:

Im nächsten Schritt wird als Datenquelle das zuvor angelegte (gleichnamige) Streaming Dataset Realtime PubNub ausgewählt:

Die Auswahl an Visualisierungsformen für Streaming Datasets ist derzeit leider sehr bescheiden, es stehen nur 5 Typen zur Auswahl:

Nach der Selektion des Linecharts wird die X-Achse mit dem Feld timestamp belegt, als Wert wird das Feld San Francisco.noise aus dem Dataset ausgewählt und als Time window wird vorerst Last 1 Minutes ausgewählt:

Im anschließenden Dialog kann der Titel und Subtitel sowie ein Link für das Visual definiert werden. Es gibt also keine Formatierungsmöglichkeiten, die Linienfarbe kann nicht geändert werden (ev. über das Dashboard Theme) und auch die Skalierung kann nicht beeinflußt werden.

Jetzt können weitere Visuals erzeugt werden, das Time Window auf Last 5 Minutes geändert werden und die Widgets am Raster entsprechend der gewünschten Gewichtung ausgerichtet werden. Fertig!

Das Realtime Dashboard steht auch automatisch im mobilen Layout ("Hochformat") zur Verfügung:

3. Evaluierung

Die Erstellung des Realtime Dashboards ist bei bereits vorhandenem Datenstream in kürzester Zeit und ohne technisches Know-How möglich und steht sofort auch in der mobilen App zur Verfügung!

Aber es gibt leider auch noch einen großen Schwachpunkt: die Technologie ist noch nicht vollständig ausgereift, es fehlen Funktion und es gibt einige Bugs. Leider wurde die Funktionalität in der letzten Zeit auch nicht spürbar weiterentwickelt.

Bugs: beispielsweise wurde die im Card Visual definierte Anzahl an Kommastellen nicht unmittelbar (sondern erst später) angewendet. Oder wurden am Tag nach der Erstellung des Dashboards in der Humidity-Card keine Werte mehr angezeigt (später dann aber schon wieder).

Tile Errors: bisher ist mir nicht klar, was diese genau bedeuten und was deren Ursache ist. Beim Klick auf Show Erros werden 5 von 6 Tiles abgedunkelt. Mit dem Aussetzer im Datenstream hat der Fehler vermutlich nichts zu tun, das liegt wohl am IoT Device das den Sensor trägt und vor Ort installiert ist.

Die Funktionseinschränkungen gg. den gewohnten Power BI Funktionalitäten sind beachtlich:

  • Streaming Datasets können nur im Power BI Service und nicht in Power BI Desktop erzeugt werden. Es existiert kein Datamodel und daher können auch keine Measures, keine Beziehungen und keine Row-Level-Security definiert werden. Der Datenstream muss also so gestaltet (und ggfs. voraggregiert werden), daß Power BI nur noch die 1:1 Visualisierung der gestreamten Werte übernimmt.
  • Die automatische Aktualisierung der Visuals ist nur in Dashboards und nicht in Reports verfügbar. Auf ein Streaming Dataset können ohnehin nur Dashboards und keine Reports erstellt werden, auch ist die Verbindung mit Power BI Desktop auf ein bestehendes Streaming Dataset derzeit nicht möglich (weil kein Datamodel existiert).
  • Im Dashboard stehen derzeit 5 Charttypen zur Verfügung, die in ihrer Funktionalität sehr stark eingeschränkt sind und nicht aktiv konfiguriert werden können. So skaliert beispielsweise die Y-Achse beim Line Chart automatisch zwischen dem aktuell kleinsten und größten Wert, beim Bar Chart wird zwingend eine absolute Achse angewendet. Auch kann die Linienfarbe nicht verändert werden und es können auch nicht mehrere Wertfelder im gleichen Linechart visualisiert werden. Im Card Visual können nur Zahlen, nicht aber der Timestamps oder Textfelder visualisiert werden.
  • Im Dashboard können keine Slicer und Filter eingesetzt werden (einerseits weil diese Funktion generell in Dashboards bisher nicht verfügbar ist und andererseits weil im Streaming Dataset kein Datamodel existiert).
  • Die Q&A Funktion im Dashboard ist nicht verfügbar (wiederum weil kein Datamodel existiert).

In einem der nächsten Blogbeiträge wird zu sehen sein, daß ein Streaming Dataset in ein sogenanntes Push Dataset umgewandelt werden kann und dann die gewohnten Auswertungsmöglichkeiten (auch mit Power BI Desktop) verfügbar sind. Diese Push-Option steht jedoch nicht für PubNub Streams zur Verfügung.

Quellen

docs.microsoft.com/de-de/power-bi/service-real-time-streaming

www.pubnub.com/tutorials/microsoft-power-bi/streaming-business-data-to-dashboards

www.pubnub.com

Power BI Camp - Präsenztrainings in Wien und Nürnberg!

DAX & Datenmodellierung, Power Query und Dashboarding mit Power BI - als einzelnes Modul oder als ganze Trainingswoche!

Nürnberg 20. bis 24. April 2020
Wien 04. bis 08. Mai 2020
Early Bird!
Share on linkedin
Share on twitter
Share on facebook

Leave a Replay

Über den Autor

Blog auf Feedly abonnieren

Kategorien

Verwandte Beiträge

Kostenlos zum Newsletter anmelden

Ihre Anfrage

Schicken Sie uns Ihre Fragen und Anregungen!