Blog_Headerbild (1)

Warum Sie Ihre Roh-Produktionsdaten kontinuierlich zu Zeitscheiben vorverarbeiten sollten

26. Juni 2021 10:27:11 MESZ / von Frank Fontaine

Titelbild Headline Roh-Produktiondaten kontinuierlich zu Zeitscheiben vorverarbeiten

Um erfolgreich neue Informationen, Wissen und Erkenntnisse in der produzierenden Industrie zu gewinnen, ist es unserer Erfahrung nach notwendig, so viele verschiedene Daten aus der Produktion vorliegen zu haben, wie möglich. Um Probleme lösen und Prozesse optimieren zu können, müssen große Datenmengen (Big Data) langfristig mit einem hohen Informationsgehalt vorgehalten werden. Dabei sind jedoch auch die Kosten der Datenerfassung und -aufbewahrung zu berücksichtigen. Erfasst ein Betrieb durchweg alle Daten und hält sie ausschließlich in Ihrer vollen Auflösung vor, so entstehen daraus auf Dauer hohe Kosten und es ergeben sich große Hürden für erfolgreiche ad-hoc Datenaufbereitung und daraus resultierende Auswertung. Kosten und Laufzeit einfacherer Auswertungen auf großen Mengen von Rohdaten überschreiten schnell praktische Grenzen, so dass das Arbeiten mit solchen Datenmengen den sogn. Data Scientists vorbehalten bleibt.

Ein Beispiel: Angenommen Sie besitzen eine Anlage, an denen ein Sensor alle 100ms einen Wert abgibt, den sie sowohl in Ihrem Datenpool zur Problemlösung und Optimierung benötigen, über den Sie aber auch - ohne Wartezeit -  ein aussagekräftiges Diagramm über die letzten 4 Wochen im direkten Zugriff haben müssen.  In vier Stunden hat diese Anlage bereits mehr Daten gesammelt, als überhaupt von Ihrem Monitor gleichzeitig dargestellt werden können. Hier reicht die Pixeldichte schlichtweg nicht aus. Auch würde das Laden dieser Daten verschiedener Anlagen sowie die Übertragung auf Ihr Gerät eine Zeit und Systemlast beanspruchen, die nicht tragbar ist. Sie wollen mit einen Klick Ergebnisse sehen und nicht Minutenlang für eine einfache Fragestellung warten. 

Wie können Sie dennoch auch aus großen Datenmengen direkt aussagekräftige Informationen gewinnen, um schnell Entscheidungen treffen zu können?

Auf Knopfdruck eine Übersicht über den Status Ihrer Produktion?
Mit der IIoT-Software da³vid alle Produktionsdaten auf einen Blick durch Maschinendatenerfassung, Dashboarding, digitales Schichtbuch, Alarmmanagement.

Lösung: Kontinuierliche Aggregation von Roh-Produktionsdaten

Die Lösung besteht in der Bereitstellung von Daten in einer aggregierten Form. Dies ist in der Datenaufbereitung moderner Data-Warehouse Systeme längst ein Standard Anwendungsfall. Vielen der bekannten Ansätze und Lösungen am Markt, vor allem aber den gängigen Tools zur Visualisierung und Analyse dieser Daten (so genannte Business-Intelligenz Systeme), fehlt dabei immer noch ein echter live Modus. Die Daten werden dort nicht kontinuierlich verdichtet, sondern erst durch rechenintensive nächtliche Aggregationen für am nächsten Tag verfügbare Berichte und Dashboards vorbereitet. Eine direkte Visualisierung und Auswertungen der live-Daten bleibt Ihnen verschlossen. 

Große Datenmengen in der produzierenden Industrie bestehen in der Regel aus einer zeitlich geordneten Folge diskreter Beobachtungen einer bestimmter Größe. So liefert ein Temperatursensor für jeden Messzeitpunkt immer genau einen Temperaturwert. Diese Reihe an Daten wird als Mess- oder Zeitreihe bezeichnet Viel zu oft halten Bestandssysteme diese Zeitreihen immer noch in klassischen relationalen Datenbanken vor. Auch moderne sog. NoSQL-Datenbanken, die etwa dokumentenorientiert arbeiten, sind für Zeitreihen nicht optimal geeignet. 

Um Ihre Produktion ganzheitlich über die Zeit betrachten und auswerten zu können, stehen dabei aber Aussagen über den historischen Verlauf Ihrer angefallen Daten - Minimal-, Durchschnitts-, Maximalwerte und Trends - im Fokus. Diese Herausforderung wurde in der Informatik erkannt und mit der Entwicklung spezialisierter Zeitreihendatenbanken adressiert. Seit 2015 gewinnt diese Technologie zunehmend an Popularität, hat unlängst ihre Marktreife unter Beweis gestellt und spielt ihre Stärken für uns vor allem im Bereich Internet-der-Dinge (IoT) und im Zusammenspiel mit maschinellen Lernen (Machine Learning) sowie der vorausschauenden Wartung (Predictive Maintenance) aus.

Zeitreihendatenbanken sind hier absolute Spezialisten. Sie bringen alle notwendigen Methoden aus der Zeitreihenanalyse bereits mit und sind dabei hoch performant.

Heute setzen wir selbst auf eine solche Datenbank, doch das war nicht immer so:

Im Laufe der Entwicklung unserer IIoT-Plattform da³vid haben wir verschiedene Datenbank-technologien im Praxisbetrieb getestet: die erste Version unserer Software war darauf ausgelegt, auch auf kleinen Microcontrollern lauffähig zu sein. Mit moderaten Datenmengen entschieden wir uns für eine pragmatische Lösung in Form eines dateibasierten Ringspeichers. Mit dem Umzug auf Linuxbasierte-Systeme und steigenden Anforderungen an unserer Datenhaltung haben wir auf eine stark vereinfachte eigene Implementierung einer JSON-basierten-Datenbank mit Zeitreihenfunktionen umgestellt (ähnlich MongoDB). Diese eigentlich als Brücke gedachte eigene Technologie funktionierte bei Datenbankgrößen bis 20 GB ziemlich gut, geriet aber mit größeren Datenmengen im Bereich von 100 GB spätestens an ihre Grenzen. Gleichzeitig haben wir die Erfahrung gemacht, dass wir sowohl unstrukturierte Daten, strukturierte Daten als auch Zeitreihen-Daten speichern und verarbeiten müssen - Anwendungsbereiche die sich zumindest auf den ersten Blick für eine Datenbank widersprechen.

Nach diesen Erfahrungen setzen wir in unser IIoT-Plattform da³vid setzen mittlerweile auf TimescaleDB. Diese Technologie setzt auf der bewährten PostgreSQL OpenSource-Datenbank auf. Für unser Szenario bietet diese mit ihren sogn. "Continuous Aggregates" die Möglichkeit direkt Messwerte im laufenden Betrieb vorzuverarbeiten. Ob und welche Zeitreihen,  zusätzlich zur Vorhaltung der Rohdaten auf vorgegebenen Intervalle, so genannten Time Buckets, verdichtet werden, kann über das Datenbankschema konfiguriert werden. Gleichzeitig behalten wir die volle Mächtigkeit von PostgreSQL für strukturierte Daten und das speichern von unstrukturierten Daten als JSON. Durch das von uns gewonnene Know-How bei der Auslegung, Anbindung und Konfiguration dieser Datenbanktechnologie können wir diese auch auf Edge-Geräten mit wenig Rechenleistung und Arbeitsspeicher mit sehr guter Performance einsetzen.

Die Vorteile kontinuierlicher Aggregation der Rohdaten

Nehmen wir zur Veranschaulichung einen Drucksensor an einer Anlage, bei dem wir langfristig den tatsächlichen Druckverlauf in voller Auflösung vorhalten müssen. Ad-hoc interessieren wir uns aber nur für Druckspitzen, die wir ohne lange Wartezeit über einen großen Zeitraum direkt aus einem Graphen ablesen wollen. 

Mit einer Auflösung von 10 Messwerten pro Sekunde laufen wir in diesem Szenario schnell in große Datenmengen. In der Stunde sind das 36.000 Werte, an einem Tag 864.000. In einer Woche (Montag - Samstag) erfasst man diesen Wert also 5.184.000 Mal und monatlich damit 20.736.000 mal. Möchten Sie sich nun die Werte der letzten Woche anschauen, so müssten 5.184.000 Rohwerte geladen, verarbeitet und visualisiert werden. Diese Datenmenge kann in Ihrer vollen Auflösung nicht mehr auf einem Display dargestellt werden. Selbst wenn Sie als Mensch einzelne Pixel unterscheiden könnten, so kann auch ein 4K Monitor diese Informationsdichte nicht mehr bereitstellen. Die Werte müssen also so vorverarbeitet werden, dass der Verlauf der Daten erhalten bleibt und lokale Maxima/Minima, also die Druckspitzen, erkennbar bleiben.

Durch die kontinuierliche Verdichtung der gesammelten Werte lässt sich die Anzahl der Messwerte, die in einer ad-hoc Auswertung betrachtet werden müssen deutlich reduzieren, ohne die Aussagekraft und Nützlichkeit der Daten merklich zu reduzieren. Dies verdeutlicht die folgende Tabelle:

Tabelle Daten kontinuierlich verdichten

Damit wird auch ein sehr effizienter Drill-Down möglich. Sie können sich über eine Zoom Funktion im Graphen gezielt Bereiche mit einer immer höheren Auflösung visualisieren lassen. Das Ganze solange, bis Sie auf der maximalen Auflösung sind: Ihren Rohdaten. Das System lädt die Daten dabei immer in der am besten passenden Auflösung. Dabei gehen keine Informationen verloren und die Ladezeiten sind stets optimiert.  Die notwendigen Systemressourcen der Hardware sowie das Datenvolumen beim Transfer auf Ihr Endgerät werden deutlich reduziert. Ad-hoc Auswertungen auf großen Datenmengen können so auch auf Geräten im Feld mit wenig Ressourcen sehr effizient durchgeführt werden. 

Als Nebeneffekt haben Sie damit auch Ihr Datenvolumen sehr gut im Griff, ohne komplexe, langlaufende Routinen zum Aufräumen ins Leben rufen zu müssen, für deren Ausführung Sie auf Wartungsfenster während Produktionsstillständen angewiesen sind. Das Löschen aus Zeitreihen sowie das Verwerfen von Time-Buckets ist im direkten Vergleich zu Lösch-Operationen auf einer relationalen Tabelle nahezu kostenlos. Hinterlegen sie für Ihre Rohdaten und die einzelnen Time Buckets individuelle Lebenszeiten nach deren Ablauf diese verworfen werden, so kann sich Ihr System sich auch auf schwacher Hardware im Feld nebenläufig und kontinuierlich bereinigen.

Nachfolgend noch ein anderes Beispiel aus einem unserer Leistungs-Feldversuche der IoT-Praxis: in verschiedenen Räumen zeichnen wir mit BLE-Sensoren (Bluetooth LowEnergy) die Temperatur und Luftfeuchtigkeit auf. Das Bild zeigt einen Zeitraum von 100 Tagen über den ca. 30 Millionen Messwerte erfasst wurden - in weniger als 10 Sekunden vom Server geladen wurden rund 22.000 auf Stunden aggregierte Werte. Mit auf 24h aggregierten Werten beträgt die Ladezeit weniger als eine Sekunde. Im Falle von Temperatur ist eine solche Auflösung der Rohdaten nur sehr selten notwendig, sie zeigt jedoch die Leistungsfähigkeit des Systems auf.

Temperatur und Luftfeuchtigkeit Beispiel aus IoT-Praxis

 

Ihre Vorteile auf einen Blick: 

  • Die maximal darstellbare Informationsdichte auf Ihrem Bildschirm oder Report korreliert direkt mit der verfügbaren Auflösung: Im Fall eines Bildschirms sind das die Anzahl der Pixel, bei einem ausgedruckten Report das, was noch diskret gedruckt werden kann. Zeigen Sie die Daten aus Ihren Aggregaten an, hat der dargestellter Graph auch auf Ihrem Bildschirm oder in Ihrem Bericht noch den für Sie notwendigen Informationsgehalt.
  • Ihr Netzwerk wird nur mit den nur mit den tatsächlich darstellbaren Daten belastet: Es müssen in Summe weniger Daten dargestellt werden. 
  • Weniger Systemressourcen: Daten abzurufen, die bereits aggregiert vorliegen, benötigt weniger Systemressourcen (CPU-Leistung, Arbeitsspeicher) als die zugehörigen Rohdaten. Grund dafür ist, dass in Summe weniger Daten geladen und verarbeitet werden müssen.
  • Kaum Zeitaufwand und höhere Performance: Die aggregierten Daten bieten bereits eine statistische Aussagekraft, die man auf Grundlage der Rohdaten erst berechnen müsste (z.B. Mittelwert, Minimum, Maximum über einen Zeitraum). 
  • Weniger Speicherplatz notwendig: Sie benötigen weniger Speicherplatz, als wenn Sie auf ewig die Rohdaten speichern.

Daten aggregieren in da³vid: Hohe Performance auch auf Edge-Geräten 

Mit der IIoT-Plattform da³vid nutzen wir durch unseren hybriden Ansatz die jeweiligen Stärken beider Datenbanktechnologien ganz gezielt.  Zur Vorhaltung und Analyse relationaler Daten kommt PostgreSQL zum Einsatz. Mess- und Zeitreihen werden in der Zeitreihendatenbank TimeScaleDB vorgehalten. Beide Technologien sind nathlos integriert.

Ein kleines, aber technisch doch bemerkenswertes Detail im Bezug auf da³vid: Unsere Software läuft auf einem Server genau wie auf Edge-Geräten mit exakt dem gleichen Funktionsumfang. Das bedeutet, dass in beiden Fällen zusätzlich zur relationalen auch die Zeitreihendatenbank zur Verfügung steht. Mit da³vid können sie die Vorteile der kontinuierlichen Verdichtung damit insbesondere auch auch Ihren Edge-Geräten direkt im Feld nutzen und trotz schwacher Hardware schnell an die von Ihnen benötigten Informationen kommen. 

Bei HYDAC Kinesys in Schwalbach kommt unsere IIoT-Plattform da³vid  in einem solchen Anwendungsfall zum Einsatz: 

„Wir nutzen die Software von embedded data auf einem Single Core Edge Device um zeitlich hochaufgelöst Druckwerte zu loggen. Die Ladezeiten der Druckverläufe im Graph sind maximal wenige Sekunden, egal ob man große oder kleine Zeiträume betrachte. Das ist für die verwendete schmale Hardware beeindruckend schnell! Lob an embedded data!“, so Dr. Florian Krämer, Entwicklungsingenieur bei Hydac Kinesys in Schwalbach.

Mit der IIoT-Software da³vid Ihre Roh-Produktionsdaten aggregieren und alle genannten Vorteile nutzen. Zusätzlich erhalten Sie mehr Übersicht in Ihrer Produktion durch:

  • Maschinendatenerfassung
  • Dashboarding
  • digitales Schichtbuch
  • Alarmmanagement

Mehr über da³vid erfahren

Jetzt unverbindlich Gespräch buchen!

Tags: da3vid

Frank Fontaine

Verfasst von Frank Fontaine