Zum Hauptinhalt springen

Data Aggregation

Vergleich Echtzeit - Historische Daten

Neben den Echtzeit-Telemetriedaten, die über MQTT in unsere IoT Plattform fließen, spielen die sogenannten OSF-Dateien eine entscheidende Rolle im Ökosystem von OptiMEAS. OSF-Dateien sind Dateien im binären OSF-Dateiformat (Optimeas Streaming Format) und werden nicht in Echtzeit, sondern in konfigurierbaren Intervallen von typischerweise 5 bis 15 Minuten von den angeschlossenen Geräten an optiCLOUD übertragen. MQTT Daten hingegen sind Snapshots aller eingehenden Daten im JSON Format, die die Geräte von OptiMEAS mit max. 1Hz an die Cloud übertragen. In diesem Abschnitt erfahren Sie mehr über Unterschiede dieser beiden Datentypen und warum sie in unserer Plattform eine wichtige Rolle spielen.

Unterschiede zwischen MQTT-Daten und .OSF-Daten

In optiCLOUD gibt es Unterschiede zwischen den Daten, die über MQTT in Echtzeit übertragen werden, und den OSF-Daten, die in periodischen Intervallen gesendet werden. Diese Unterschiede sind entscheidend für die Qualität, Zuverlässigkeit und Anwendbarkeit der Daten. Im Folgenden werden einige Unterschiede zwischen diesen beiden Datentypen erläutert:

Zeitverzögerung und Echtzeitübertragung

  • MQTT-Daten (Echtzeit): Daten, die über MQTT(s) übertragen werden, sind in Echtzeit verfügbar. Sie bieten sofortige Einblicke in den aktuellen Zustand der vernetzten Geräte und Systeme. Dies ist besonders nützlich, um den wirklich aktuellsten Status der angebundenen Assets einzusehen und dient insbesondere der Echtzeitüberwachung und -steuerung.

  • .OSF-Daten (Verzögert): Im Gegensatz dazu werden .OSF-Daten in konfigurierbaren Intervallen von typischerweise 5 bis 15 Minuten per HTTP(s) übertragen. Es gibt daher einen natürlichen Verzögerungseffekt bei der Aktualisierung der Daten und werden daher von uns nicht als Echtzeitdaten bezeichnet. In dieser strengen definition von Live-Daten (streng, da Fernsehübertragungen z.B: auch als "Live" bezeichnet werden, obwohl sie z.T. künstlich um X-Minuten verzögert ausgestrahlt werden) sind die OSF Daten also nicht für Echtzeitüberwachungszwecke geeignet.

In diesem Beispiel werden die OSF-Daten alle 2 Minuten hochgeladen, was ein ungewöhnlich kurzes Intervall ist, dennoch sieht man den Unterschied zwischen den beiden Datentypen.

Verlässlichkeit

  • MQTT-Daten (Echtzeit):

  • Echtzeit-Telemetriedaten können unter bestimmten Umständen verloren gehen, insbesondere wenn keine Internetverbindung besteht. Dies liegt daran, dass sie mit dem QoS (Quality of Service)-Level 0 übertragen werden, bei dem keine Zustellungsbestätigungen erfolgen und sie auf Geräteseite auch nicht zwischengespeichert werden. Geht also die Internetverbindung des angeschlossenen Edge-Devices verloren, so sind auch die Daten für den Zeitbereich der Verbindungsunterbrechung verloren.

  • .OSF-Daten (Verzögert):

  • OSF-Daten sind garantiert lückenlos, da sie auch bei einer abgebrochenen Internetverbindung aufgezeichnet und später, sobald wieder eine Verbindung besteht, hochgeladen werden. Nur ein echter Geräteausfall, oder eine Verbindungsunterbrechung die so lange anhält, dass der komplette Ringspeicher der SD-Karte einmal vollgeschrieben wurde, kann zu Datenverlust führen.

In diesem Beispiel sieht man die Datenlücke, die entsteht, wenn die Internetverbindung des angebundenen Assets verloren geht. In den MQTT daten ist die Lücke zu erkennen, während die OSF Daten weiterhin lückelos aufgezeichnet wurden und dann im Nachgang an optiCLOUD überrtragen wurden.

Datenqualität

  • MQTT-Daten (Echtzeit):

  • Aufgrund der "geringen" Abtastrate, mit der die Telemetriedaten per MQTT and optiCLOUD gesendet werden, kann es je nach gemessenem Signal oder Prozess zu Informationsverlust und Aliasing kommen, dass durch die Unterabtastung bedingt ist. Insbesondere für die spätere Analyse schnell ablaufender Prozesse sind die reinen Livedatten daher nicht geeignet korrekte Aussagen über den zurundeliegenden Prozess zu treffen.

  • .OSF-Daten (Verzögert):

  • Die Abtastrate mit der die Messdaten ini OSF Dateien geschrieben werden ist konfigurierbar und kann daher auch schnell ablaufenden Prozessen angepasst werden. Der ggf. durch Unterabtastung auftretende Informationsverlust kann somit vermieden werden und die Daten sind bestens geeignet für spätere Analysen.

In diese Beispiel sieht man exemplarisch die Unterschiede der verschiedenen abtastraten. Während die MQTT Daten mit 1Hz an optiCLOUD geschickt wurden, wurden sie in den OSF Daten mit 10Hz gemessen.

Schlussfolgerung

Insgesamt sind OSF-Daten aufgrund ihrer konfigurierbaren Abtastraten und ihrer Zuverlässigkeit die bevorzugte Quelle für nachgelagerte Analysen und die genaue Abbildung der gemessenen Prozesse. Sie eignen sich besonders gut für retrospektive Auswertungen und detaillierte Einblicke in die zugrundeliegenden Prozesse und überwachten Anlagen. Auf der anderen Seite sind MQTT-Daten wertvoll für Echtzeitüberwachung, um stets einen aktuellen Einblick in die Prozesse zu haben und schnell auf aktuelle Ereignisse reagieren zu können. Die Wahl zwischen diesen beiden Datenquellen hängt von den spezifischen Anforderungen und Zielen Ihrer IoT-Anwendung ab. Es ist also ratsam bei der Konfiguration der angebundenen Geräte eine Auswahl derjenigen Daten zu treffen, die Live übertragen werden sollten und derjenigen Daten, die zwar nicht live, aber dafür von hoher Qualität sein sollen, um sie in späteren Analysen verwenden zu können. Bei manchen, langsam ablaufenden oder unkritischen Prozessen spielt diese Auswahl keine entscheidende Rolle, da die Datenqualität der MQTT Daten in diesen Fällen oftmals vollkommen ausreicht. Bei schnell ablaufenden Prozessen, oder solchen, bei denen es auf keinen Fall zu Datenlücken kommen soll, ist es hingegen ratsam festzulegen, welche der beiden Aufzeichnungs und Übertragungswege pro Messkanal gewählt werden.

Die Übertragung der .OSF-Dateien

Die .OSF-Dateien, die von den angeschlossenen Geräten erzeugt werden, enthalten also Daten, die zur Analyse und Visualisierung Ihrer IoT-Infrastruktur verwendet werden können. optiCLOUD übernimmt die Aufgabe, diese Dateien anzufordern, zu empfangen, zu verarbeiten und zu speichern. Dies geschieht automatisch, ohne dass Sie als User manuelle Schritte unternehmen müssen. Dieser Prozess gewährleistet, dass alle relevanten Daten in unserer Plattform verfügbar sind, um genutzt werden zu können.

Hintergrundverarbeitung

Die Rohdaten, die in den OSF-Dateien enthalten sind, werden häufig mit einer hohen Frequenz im Kilohertz-Bereich aufgezeichnet. Da dies zu einem enorm hohgen Datenaufkommen führt, wäre es nicht möglich die Daten in annehmbaren Zeiträumen zu visualisieren, da die Übertragung dieser Datenmengen alleine schon eine gewisse Zeit in Anspruch nehmen würde. Ebenso ist es nicht sinnvoll, auf einem Bildschirm mit z.B. 1000px Breite zu versuchen 10.000 Datenpunkte darzustellen, da sich diese alle überlagern würden und aus den einzelnen Datenpunkten eine einzige Fläche entstehen würde. Das plotten dieser Fläche würde jedoch sehr viel arbeitsleistung des Rechn ers in Anspruch nehmen, wodurch ebenfalls lange wartezeiten entstehen würden. Um große Mengen an Daten dennoch performant und sinvoll auf optiCLOUD darzustellen, werden Algorithmen eingesetzt, um aus den Rohdaten Intervalle in einer Art Datenpyramide zu berechnen. Die Verwendung dieser Intervallberechnungen ermöglicht es, die Datenmenge erheblich zu reduzieren und gleichzeitig den Informationsgehalt beizubehalten. Dies ist entscheidend, um große Zeitbereiche effizient zu laden und darzustellen zu können. Die resultierenden Intervalle dienen als Grundlage für die Erstellung von Dashboards und die Durchführung erster Sicht-Analysen.

Datenpyramide und Visualisierung

Sobald die OSF-Dateien von den angebundenen Geräten hochgeladen sind, beginnt unsere Plattform mit dieser Hintergrundverarbeitung. Sie verarbeitet die Daten anhand der in den Aggregation Einstellungen eingestellten Aggregation Levels. Dies geschieht, indem optiCLOUD aus den eingehenden Daten die hier eingestellten Zeitintervale berechnet und für jedes Intervall den MIN, MAX und LATEST Wert ausliest und diese in den Datenbanken speichert.

Mit eingehen weiterer OSF-Dateien, können größere Intervalle errechnet und somit die Datenmenge, die es später zu visualisieren gilt, drastisch reduziert werden. Wählt man nun auf einem Dashboard einen entsprechend großén Zeitbereich aus, so wird im Hintergrund errechenet, welches bestehende Zeitintervall für diesen Zeitbereich am geeignetsten ist in Verbindung mit der hier eingestellten "Maximalen Anzahl darzustellender Datenpunkte". Angezeigt wird dem Nuzer dann dasjenige Intervall, welches der maximalen Anzahl darzustellender Datenpunkte am nähesten kommt, ohne diese Anzahl zu überschreiten. So kann gewährleistet werden, das Nutzer von optiCLOUD in sekundenschnelle den informativsten Einblick in ihre Daten erhalten, der für den ausgewählten Zeitraum optisch noch sinnvoll ist. Erst wenn der ausgewählte Zeitbereich so gering ist, dass es sinvoll ist die wirklichen Rohdaten zu plotten, werden diese auch geladen und visualisiert.

Auswahl der Aggregationslevel

Die Auswahl der hier einzustellenden Aggregationslevel hängt von den zugrundeliegenden Prozessen ab. Für schnell ablaufenden Prozesse, die im kilohertz Bereich gemessen werden, sollten andere Aggregationslevel ausgewählt werden, als für Prozesse, die langsamer ablaufen und gemessen werden. Für die genaue Auswahl

warnung

Einmal erstellte Aggregationslevel können nur abgeändert werden, wenn die Datenbank leer ist, da ansonsten die gesamte Historie bereits angelaufener Daten neu berechnet werden müsste.