Zeitreihendaten sind allgegenwärtig in unserem Leben. Sie sind überall, von Wettervorhersagen und Aktienkursen bis hin zu Sensoren und Überwachungssystemen in industriellen Automatisierungsumgebungen. Was sind Zeitreihendaten? Was sind die besten Datenbanken, Darstellungsmöglichkeiten für Zeitreihendaten und Techniken?
Zeitreihendaten sind in unserem Leben allgegenwärtig. Wir können sie in so gut wie jedem Bereich antreffen: Sensoren, Überwachung, Wettervorhersagen, Aktienkurse, Wechselkurse, Anwendungsleistung und eine Vielzahl anderer Messgrößen, auf die wir uns in unserem beruflichen und täglichen Leben verlassen.
In diesem Artikel werden wir alle theoretischen Informationen über Zeitreihendaten zusammenfassen. Dieses Grundwissen ist eine Voraussetzung für die Nutzung von Zeitreihendatensätze, um geschäftliche Erkenntnisse zu gewinnen oder eine Studie durchzuführen. Wir behandeln die wichtigsten Konzepte im Zusammenhang mit dem Sammeln, Organisieren und Verwenden von Zeitreihendaten. Lernen Sie die Arten und Formate von Zeitreihendaten kennen und wie man sie speichert und sammelt. Außerdem tauchen wir in die Grundlagen der Analyse- und Visualisierungstechniken ein, die anhand mehrerer Zeitreihendatenbeispiele erläutert werden.
Zunächst sollten wir klar definieren, was Zeitreihendaten eigentlich sind und was nicht.
Grundsätzlich sind Zeitreihendaten, Informationen, die als geordnete Folge dargestellt werden. Sie können definiert werden als eine Sammlung von Beobachtungen für ein einzelnes Subjekt, die über verschiedene, gleichmäßig verteilte Zeitintervalle hinweg zusammengestellt werden. Einfacher ausgedrückt: Zeitreihen sind Daten (Beobachtungen oder Verhalten), die zu verschiedenen Zeitpunkten gesammelt und chronologisch geordnet werden.
Die Zeit ist das zentrale Merkmal, das Zeitreihen von anderen Arten von Daten unterscheidet. Die Zeitintervalle, die die gesammelten Daten in eine chronologische Reihenfolge bringen, werden als Zeitreihenfrequenz bezeichnet. Somit ist die Zeit als eine der Hauptachsen also der Hauptindikator dafür, dass es sich bei einem bestimmten Datensatz um eine Zeitreihe handelt.
Nun klären wir, welche Arten von Daten KEINE Zeitreihen sind, um dies aus dem Weg zu räumen. Auch wenn es sehr üblich ist, die Zeit als Achse in Datensätzen zu verwenden, sind nicht alle gesammelten Daten Zeitreihen. Daten können, basierend auf der Zeit, in verschiedene Arten unterteilt werden, d. h. wie und wann sie aufgezeichnet wurden.
Hier sind drei grundlegende Datentypen, unterteilt nach der Zeit in einer Datensatzpräsentation:
Da Zeitreihen für mehrere Zwecke und in verschiedenen Bereichen verwendet werden, können die Datensätze variieren. Hier sind die drei wichtigsten Merkmale, an denen man solche Datensätze leicht erkennen kann:
Die Möglichkeit, auf aufschlussreiche Daten zuzugreifen und diese analysieren zu können, wird schnell zu einer Notwendigkeit für fast jede Organisation, einschließlich Unternehmen, öffentliche Einrichtungen und Bildungseinrichtungen. Zeitreihendaten sind ein wertvolles Gut, wessen Wert in der heutigen Welt mächtig ansteigt.
Es wäre nicht übertrieben zu sagen, dass Daten - und unsere Fähigkeit, Daten mit bisher nicht gekannter Geschwindigkeit und Effizienz zu sammeln und zu organisieren - eine Schlüsselkomponente der technologischen Entwicklung sind. Die Fähigkeit, gesammelte Daten zu nutzen, ermöglicht es uns, bessere Systeme zu bauen, die Effizienz praktisch aller Prozesse zu verbessern und zukünftige Ereignisse in Echtzeit vorherzusagen.
In der heutigen Welt sind Zeitreihendatenmodelle wirklich allgegenwärtig. Zeitachsendatensätze werden in zahlreichen Branchen verwendet, von der Finanz- und Wirtschaftswelt bis hin zu Wissenschaft, Gesundheitswesen, Wettervorhersage und Technik.
Da Daten in der heutigen Geschäftswelt schnell zu einem der wertvollsten Güter werden, nimmt auch die Bedeutung von Zeitreihendaten zu. Unternehmen auf der ganzen Welt sehen sich mit der Notwendigkeit konfrontiert, mehr IT-Systeme, Sensoren und Tools zu implementieren, die alle in der Lage sind, Zeitreihendaten zu erzeugen und/oder zu sammeln.
Deshalb ist es wichtig zu verstehen, was Zeitreihendaten sind und wie die richtige Nutzung einem Unternehmen ermöglichen kann, praktisch alle Arbeitsabläufe zu verbessern und zu optimieren.
Da Zeit ein grundlegender Bestandteil unseres Lebens ist, spielt sie bei der Erfassung aller beobachtbaren Informationen eine Rolle. Mit anderen Worten, es wäre nicht falsch zu sagen, dass sie überall zu finden ist.
Durch ihre Allgegenwärtigkeit, gibt es natürlich unzählige verschiedene Anwendungen von Zeitreihen in allen Branchen. Hier finden Sie ein paar Beispiele, um genauer zu verstehen, wie sie in der Praxis eingesetzt werden.
Zeitreihendaten können anhand verschiedener Kriterien in eine Reihe von Arten unterteilt werden. Die Unterschiede zwischen den Datentypen zu kennen ist wichtig, da sie sich auf die Art und Weise auswirkt, wie Sie mit Zeitreihendaten interagieren können und wie die Datenbank sie speichern und komprimieren kann. Im folgenden Teil des Artikels werden einige Beispiele der gebräuchlichsten Methoden zur Kategorisierung und Abbildung von Zeitreihendaten vorgestellt.
Ein wichtiges Merkmal von Zeitreihen ist die Beziehung zur Regelmäßigkeit der erfassten Messungen. Je nachdem, ob die Daten in regelmäßigen oder unregelmäßigen Zeitabständen erfasst wurden, können sie als Metriken oder Ereignisse klassifiziert werden.
Metriken sind eine Art von Messungen, die in regelmäßigen Zeitabständen erfasst werden.
Ereignisse sind eine Art von Messungen, die in unregelmäßigen Zeitabständen erfasst werden.
Metriken
Regelmäßige Daten, die gleichmäßig über eine bestimmte Zeit verteilt sind und daher abgebildet oder für Prozesse wie Prognosen verwendet werden können, nennt man Metriken. Sie benötigen Metriken, um Modellierung, Prognosen und die Erstellung von Statistiken aller Art nutzen zu können.
Hier sind einige Beispiele für Metriken.
Herzfrequenzüberwachung (EKG) und Überwachung des Gehirns (EEG)
Die oben erwähnte Herzfrequenzüberwachung, auch bekannt als Elektrokardiogramm (EKG), und die Überwachung des Gehirns (Elektroenzephalogramm, EEG) sowie andere gesundheitsbezogene Überwachungsmethoden sind Beispiele für Metriken: Sie messen die Aktivität der menschlichen Organe in regelmäßigen Zeitabständen.
Wetterbedingungen
Alle Arten der Wetterbeobachtung, wie z. B. die tägliche Temperatur, der Wind, der Luftdruck, die Höhe der Gezeiten usw., sind Beispiele für Metriken, die zur Erstellung von Datenmodellen verwendet werden, die uns die Vorhersage künftiger Wetteränderungen ermöglichen.
Aktienkursschwankungen
Messungen der Aktienkursschwankungen werden ebenfalls in regelmäßigen Abständen durchgeführt.
Ereignisse
Die Messung von Ereignissen erfolgt in unregelmäßigen Zeitabständen. Da sie nicht vorhersehbar sind, sind die Intervalle zwischen den Ereignissen inkonsistent, was bedeutet, dass diese Daten nicht für Prognosen und Modellierungen verwendet werden können, da dies zu unzuverlässigen Zukunftsprojektionen führen würde.
Einfacher ausgedrückt: Ereignisse sind eine Art von Daten, die erforderlichen Daten erfassen, sobald sie generiert werden, was in unterschiedlichen Zeitabständen oder in Impulsen geschehen kann.
Hier sind einige Beispiele für Ereignisse.
Einzahlungen/Abhebungen von Bankkonten
Die finanzielle Überwachung von Bankkonten und Geldautomaten ist ein Beispiel für Ereigniszeitreihen, bei denen die erfassten Daten die Einzahlungen und/oder Abhebungen sind, die in der Regel in unvorhersehbaren Zeitabständen erfolgen.
Computer-Protokollierung
In Computersystemen dienen Protokolldateien als Hilfsmittel, das entweder verschiedene Arten von Ereignissen aufzeichnet, die in einem Betriebssystem und anderer Software auftreten, oder Nachrichten zwischen verschiedenen Benutzern einer Kommunikationssoftware. Da alles innerhalb unregelmäßiger Zeitabstände geschieht, können die Informationen in den Protokollen als Ereignisse klassifiziert werden.
Lineare vs. nicht lineare Zeitreihendaten
Eine weitere Möglichkeit der Klassifizierung sind die funktionalen Formen der Datenmodellierung, welche sich in lineare und nicht lineare Daten unterteilen.
Bei linearen Zeitreihen kann jeder Datenpunkt als eine lineare Kombination vergangener oder zukünftiger Werte betrachtet werden. Mit anderen Worten: Eine lineare Zeitreihe wird durch eine lineare Gleichung erzeugt und kann als lineares AR-Modell (autoregressives Modell) dargestellt werden.
Ob eine Zeitreihe linear ist, lässt sich unter anderem daran erkennen, wie sich X und Y im Verhältnis zueinander verändern. Wenn X um 1 zunimmt und Y dementsprechend mit einer konstanten Rate zunimmt, sind die Daten linear.
Hier ist ein Beispiel für ein lineares Diagramm
Nicht lineare Zeitreihen hingegen werden durch nicht lineare dynamische Gleichungen erzeugt und weisen Merkmale auf, die nicht durch lineare Prozesse dargestellt werden können, wie z. B. Brüche, Schwellenwerte, asymmetrische Zyklen und sich ändernde Varianzen unterschiedlicher Art. Deshalb ist die Erzeugung und Verarbeitung nicht linearer Zeitreihendaten in der Regel sehr viel schwieriger und erfordert komplexe
Modellierungsverfahren.
Hier ist ein Beispiel für nicht lineare Daten:
Wie man mit Zeitreihendaten arbeitet
Betrachten wir nun einige Schlüsselaspekte von Zeitreihendaten, die Sie unbedingt verstehen müssen, um mit ihnen arbeiten und sie nutzen zu können.
Unveränderlichkeit
Ein Ansatz, der für Zeitreihendaten grundlegend ist und allgemein in allen Computersystemen Anwendung findet, ist die Unveränderlichkeit. Dieses Konzept ist recht einfach zu verstehen.
Unveränderlichkeit bedeutet, dass Daten (Objekte in funktionalen Programmiersprachen) nach der Erstellung eines neuen Datensatzes nicht mehr verändert werden dürfen. Stattdessen sollten alle neuen Datensätze nur zu den bestehenden Daten hinzugefügt werden.
Anpassungen von Zeitreihendatenmodellen werden immer als neuer Eintrag aufgezeichnet, der in einer zeitlichen Reihenfolge kommt. Gemäß dem Prinzip der Unveränderlichkeit werden Einträge in Zeitreihendaten in der Regel nicht geändert, nachdem sie erfasst wurden, sondern einfach zu allen vorherigen Datensätzen in einer Datenbank hinzugefügt.
Jetzt sollte es ziemlich einfach sein zu verstehen, warum Unveränderlichkeit ein Kernkonzept für Zeitreihendaten ist. Zeitreihendatenbanken werden immer (oder "typischerweise", um genau zu sein) als eine zeitlich geordnete Reihe unveränderbarer Objekte behandelt. Durch die Einbeziehung der Unveränderlichkeit können Zeitreihendatenbanken konsistent und unverändert gehalten werden, da alle Abfragen zu einem bestimmten Zeitpunkt durchgeführt werden.
Das Kernprinzip der Unveränderlichkeit ist etwas, das Zeitreihendaten von relationalen Daten unterscheidet. Im Gegensatz zu Zeitreihen sind relationale Daten, die in relationalen Datenbanken gespeichert werden, in der Regel veränderbar. Sie werden für die Online-Transaktionsverarbeitung und andere Anforderungen verwendet, bei denen neue Ereignisse in der Regel zufällig auftreten. Obwohl diese Ereignisse immer noch in chronologischer Reihenfolge auftreten (Ereignisse jeglicher Art können einfach nicht außerhalb der Zeit existieren), ist die Zeit für solche Daten nicht relevant und wird daher nicht als Achse verwendet. Bei Zeitreihendaten hingegen sind zeitliche Veränderungen immer essenziell.
Datentypen
Lassen Sie uns nun näher auf die drei grundlegenden Datentypen eingehen, die wir bereits erwähnt haben, und wie sich Zeitreihendaten von Querschnittsdaten, gepoolten Daten und Paneldaten unterscheiden. Das Verständnis dieser Konzepte ist ein weiteres Schlüsselelement, um Zeitreihendaten mit zahlreichen Vorteilen nutzen zu können.
Wie wir gelernt haben, handelt es sich bei Zeitreihendaten um eine Sammlung von Messdaten zu einem einzigen Thema, die über verschiedene Zeitintervalle hinweg zusammengestellt wurden. Die Zeit als Achse ist ein charakteristisches Merkmal von Zeitreihendaten.
Vergleichen wir sie nun mit Querschnittsdaten und gepoolten Daten/Paneldaten.
Querschnittsdaten
Querschnittsdaten dienen als Gegenbegriff, da diese Art von Daten auf der Erfassung und Organisation verschiedener Arten von Daten zu einem einzigen Zeitpunkt beruht. Querschnittsdaten sind nicht auf eine natürliche Reihenfolge der Messungen angewiesen, sodass die Daten in beliebiger Reihenfolge eingegeben werden können.
Daten über die Höchsttemperatur, den Wind oder die Luftfeuchtigkeit an einem beliebigen Tag im Jahr können ein gutes Beispiel für Querschnittsdaten sein. Das Gleiche gilt für die Schlusskurse von Aktien an der Börse oder die Verkäufe eines Warenhauses an einem bestimmten Tag.
Gepoolte Daten und Paneldaten
Gepoolte Daten (oder Querschnittsdaten) und Paneldaten (auch Längsschnittdaten genannt) sind zwei recht ähnliche Konzepte, die beide zur Beschreibung von Daten verwendet werden, bei denen Zeitreihen- und Querschnittsmessungen kombiniert werden.
Im Wesentlichen beruhen sowohl Panel- als auch gepoolte Daten auf der Kombination von Querschnitts- und Zeitreihenmessungen. Der einzige Unterschied besteht in der Beziehung zu den Maßeinheiten, um die herum die Daten erhoben werden (z. B. Unternehmen, Städte, Branchen usw.).
Paneldaten beziehen sich auf mehrdimensionale Daten, bei denen Stichproben derselben Querschnittsmessung zu mehreren Zeitpunkten beobachtet werden.
Gepoolten Daten nutzen zufällige Stichproben von Querschnittsmessungen in verschiedenen Zeiträumen, sodass jede Stichprobe von Querschnittsdaten verschiedene Maße aufweisen kann.
Woran erkennt man den Unterschied zwischen Zeitreihen, Querschnittsdaten und gepoolten/Paneldaten?
Zweifellos können diese Erklärungen zu den Datentypen einige Leute immer noch verwirren. Hier sind einfache Möglichkeit, diese Datentypen voneinander zu unterscheiden.
Datenspeicherung
Zeitreihendaten werden in der Regel in Zeitreihendatenbanken gespeichert, die speziell für die Arbeit mit Zeitstempeldaten - seien es Metriken oder Ereignisse - entwickelt oder optimiert wurden. Da Zeitreihendaten häufig überwacht und in großen Mengen gesammelt werden, ist eine Datenbank erforderlich, um große Datenmengen verarbeiten zu können.
Zeitreihendatenbanken müssen auch in der Lage sein, Funktionen zu unterstützen, die für die effiziente Nutzung von Datensätzen entscheidend sind, z. B. Datenzusammenfassung, Management eines Datenlebenszyklus und zeitbezogene Abfragen.
Hier finden Sie eine Liste von Merkmalen und Fähigkeiten, die eine moderne zweckbestimmte oder optimierte Zeitreihendatenbank aufweisen sollte:
Apache Druid ist eine spaltenorientierte Open-Source-Zeitreihendatenbank, die für Hochgeschwindigkeits-Analyseanwendungen entwickelt wurde, die eine schnelle Aufnahme großer Datenmengen und die Fähigkeit erfordern, operative Abfragen mit niedriger Latenz und hoher Gleichzeitigkeit auf diese Daten durchzuführen.
Das Projekt zur Entwicklung der Druid-Datenbank wurde ursprünglich 2011 von vier Entwicklern - Eric Tschetter, Fangjin Yang, Gian Merlino und Vadim Ogievetsky - gestartet, die eine Datenbank für das “Metamarkets”-Projekt erstellen mussten. Im Jahr 2012 wurde das Projekt auf eine GPL-Open-Source-Lizenz übertragen und 2015 auf eine Apache-Lizenz umgestellt. Der Name der Datenbank, Druid, wurde von der Charakterklasse der Druiden in vielen Rollenspielen inspiriert und spiegelt die Tatsache wider, dass sich die Form dieser Datenbank schnell ändern kann, um verschiedene Arten von Datenproblemen zu lösen.
Heutzutage wird Apache Druid häufig in hochbelasteten Business-Intelligence-Anwendungen eingesetzt, um Daten aus Nachrichtenbussen wie Kafka oder Amazon Kinesis zu streamen und Dateien aus großen Datenspeichern wie HDFS oder Amazon S3 zu laden.
Apache Pinot ist eine Open-Source-Zeitreihendatenbank, die OLAP-Abfragen mit geringer Latenz auf unveränderliche und veränderliche Daten beantworten soll.
Das Projekt zur Entwicklung von Apache Pinot wurde ursprünglich von einem internen Team bei LinkedIn mit dem Ziel gestartet, eine Datenbank zu erstellen, die den Anforderungen des sozialen Netzwerks an umfangreiche Echtzeit-Datenanalysen gerecht wird. Es wurde 2015 unter der Apache 2.0-Lizenz veröffentlicht und 2019 an die Apache Software Foundation übergeben, die es jetzt verwaltet.
Apache Pinot ist eine spaltenorientierte Datenbank, die Komprimierungsverfahren wie Run Length oder Fixed Bit Length und steckbare Indexierungstechnologien wie Sorted Index, Bitmap Index oder Inverted Index unterstützt. Sie ist in der Lage, Zeitreihendaten sowohl aus Batch- (Hadoop HDFS, Amazon S3, Azure ADLS) als auch aus Stream-Datenquellen (Apache Kafka) aufzunehmen.
Amazon Timestream, Teil von Amazon Web Services (AWS), ist eine speziell entwickelte Zeitreihendatenbank für die Erfassung, Speicherung und Verarbeitung von Zeitreihendaten in IoT- und Betriebsanwendungen.
Eine Besonderheit von Amazon Timestream ist die schnelle Verarbeitung von Zeitreihendaten für Echtzeit-Analysen. Der Service wurde entwickelt, um eine 1.000-mal schnellere Abfrageleistung im Vergleich zu rationalen Datenbanken zu bieten, und umfasst Funktionen wie geplante Abfragen, Datensätze mit mehreren Messungen und Datenspeicher-Tiering. Die automatische Skalierung ist ein weiterer Vorteil von Amazon Timestream, der sich aus der Cloud-Art dieses Dienstes ergibt. Die Lösung skaliert automatisch in Übereinstimmung mit den Anforderungen der Benutzeranwendung.
Amazon Timestream bietet SQL-Unterstützung mit integrierten Zeitreihenfunktionen für Verteilung, Anpassung und Interpolation. Die Funktion für geplante Abfragen bietet eine serverlose Lösung für die Berechnung und Speicherung von Aggregaten, Rollups und anderen Echtzeit-Analysen. Timestream-Abfragen werden in einer SQL-Grammatik mit Erweiterungen für zeitreihenspezifische Datentypen und Funktionen ausgedrückt. Die Abfragen werden dann von einer adaptiven und verteilten Abfrage-Engine verarbeitet, die Metadaten aus dem Dateienverfolgungs- und Indizierungsdienst verwendet, um zum Zeitpunkt der Abfrage nahtlos auf Daten in verschiedenen Datenspeichern zuzugreifen und diese zu kombinieren. Die Abfragen werden von einer speziellen Flotte von Arbeitern ausgeführt, deren Anzahl sich nach der Komplexität der Abfrage und der Datengröße richtet. Bei komplexen Abfragen wird die Leistung über große Datensätze durch massive Parallelität erreicht, sowohl in der Abfrage der Ausführungsflotten als auch in den Speicherflotten des Systems.
Graphite ist eine Open-Source-Datenbank- und Überwachungslösung für die schnelle Echtzeitverarbeitung, Speicherung, Abfrage und Darstellung von Zeitreihendaten. Ursprünglich von der Firma Orbitz Worldwide im Jahr 2006 entwickelt, wurde Graphite 2008 unter der Open-Source-Lizenz Apache 2.0 veröffentlicht.
Graphite wird am häufigsten in der Produktion und von E-Commerce-Unternehmen eingesetzt, um die Leistung von Servern, Anwendungen, Websites und Softwarelösungen zu überwachen. Das Tool basiert auf Whisper, einer einfachen Datenbankkomponente, um Zeitreihendaten zu speichern. Graphite ist kein Datenerfassungsagent, sondern bietet stattdessen mehrere einfache Integrationen mit Datentools von Drittanbietern. Es verwendet Carbon als primären Backend-Daemon, der auf alle an das System gesendeten Zeitreihendaten wartet und sich um deren Verarbeitung kümmert. Eine zusätzliche Graphite-Webapp verwaltet die Datenvisualisierung und rendert Diagramme bei Bedarf mithilfe der Cairo-Bibliothek.
OpenTSDB ist eine verteilte Open-Source-Zeitreihendatenbank, die ursprünglich auf der Open-Source-Datenbank Apache HBase basiert. Sie wurde entwickelt, um Zeitreihendaten in großem Maßstab zu sammeln, zu speichern und darzustellen. OpenTSDB ist unter den Lizenzen GNU Lesser General Public License (LGPL) und GNU GPL frei verfügbar.
OpenTSDB wurde für maximale Skalierbarkeit entwickelt und unterstützt die Sammlung von Zeitreihendaten aus zehntausenden von Quellen innerhalb eines industriellen Automatisierungsnetzwerks mit hoher Geschwindigkeit. OpenTSDB-Datenbanken bestehen aus Time Series Daemons (TSD) und einer Reihe von Kommandozeilenprogrammen. TSDs laufen in jedem Container und sind dafür verantwortlich, neu gesammelte Daten sofort nach Erhalt in die Speicherebene umzuleiten. Jeder TSD in einer OpenTSDB-Datenbank ist unabhängig von den anderen und verwendet entweder die HBase-Datenbank oder den gehosteten Google Bigtable-Dienst, um Zeitreihendaten zu speichern und darauf zuzugreifen. Die Kommunikation mit Time Series Daemons kann über eine integrierte grafische Benutzeroberfläche, eine HTTP-API oder über ein beliebiges Telnet ähnliches Kommunikationsprotokoll erfolgen.
InfluxDB ist eine Open-Source-Zeitreihendatenbank, die von der Firma InfluxData entwickelt wurde und für die Verarbeitung großer Mengen von Zeitstempeldaten aus verschiedenen Quellen, einschließlich Sensoren, Anwendungen und Infrastruktur, konzipiert ist. InfluxDB verwendet als Abfragesprache Flux, eine Programmiersprache der vierten Generation, die für Data Scripting, ETL, Monitoring und Alerting entwickelt wurde.
InfluxDB ist in der Programmiersprache Go geschrieben und wurde für die hochleistungsfähige Speicherung von Zeitreihendaten entwickelt. InfluxDB kann Millionen von Datenpunkten pro Sekunde verarbeiten und ermöglicht die Aufnahme, Komprimierung und Abfrage von Daten mit hohem Durchsatz in Echtzeit. InfluxDB verdichtet, komprimiert und verkleinert Daten automatisch, um die Speicherkosten zu minimieren. Dabei werden hochpräzise Rohdaten für eine begrenzte Zeit aufbewahrt und die weniger präzisen, zusammengefassten Daten wesentlich länger gespeichert. Die InfluxDB-Plattform umfasst eine mandantenfähige Zeitreihendatenbank, Hintergrundverarbeitung, einen Überwachungsagenten sowie UI- und Dashboarding-Tools für die Datenvisualisierung. Die Benutzeroberfläche von InfluxDB umfasst einen Data Explorer, Dashboarding-Tools und einen Skript-Editor. Mit dem Data Explorer können Benutzer schnell durch die Metrik und die gesammelten Ereignisdaten blättern und allgemeine Transformationen anwenden. Der Skript-Editor ist so konzipiert, dass Benutzer die Flux-Abfragesprache mit leicht zugänglichen Beispielen, automatischer Vervollständigung und Echtzeit-Syntaxprüfung schnell erlernen können.
IBM Informix ist eine Familie von relationalen Datenbankmanagementsystemen (RDBMS), die ursprünglich von der Informix Corporation entwickelt wurden und für hochfrequente OLTP-Anwendungen (Online Transaction Processing) in Branchen wie Fertigung, Einzelhandel, Finanzwesen, Energie- und Versorgungswirtschaft usw. konzipiert sind. Im Jahr 2001 wurde die Informix-Datenbank von IBM übernommen und ist nun Teil von IBM Information Management. Im Jahr 2017 lagerte IBM die Wartung und den Support von Informix an das indische Unternehmen HCL Technologies aus.
Es gibt mehrere Ausgaben der Informix-Datenbank, darunter kostenlose Versionen für Entwickler, kleine und mittlere Unternehmen usw. Sie ist für Netzwerke mit geringen Datenbankadministrationskapazitäten optimiert und umfasst mehrere Selbstverwaltungs- und automatisierte Verwaltungsfunktionen.
IBM Informix unterstützt die Integration von Zeitreihen, SQL, NoSQL, BSON, JSON und räumlichen Daten. Die Datenbank enthält die Informix TimeSeries-Funktion, die für die schnelle und einfache Arbeit mit Zeitreihendaten entwickelt wurde, die von verschiedenen intelligenten Geräten in IoT-Netzwerken erzeugt werden.
MongoDB ist eine nicht-relationale, dokumentenorientierte Datenbank, die für die Speicherung von JSON-ähnlichen Dokumenten und anderen Arten von unstrukturierten Daten entwickelt wurde. Das Projekt zur Entwicklung von MongoDB wurde 2007 von der Firma 10gen (die später ihren Namen in MongoDB Inc. änderte) gestartet. Die Datenbank ist derzeit unter der Server Side Public License (SSPL) lizenziert, einer vom Projekt entwickelten, nicht frei verfügbaren Lizenz.
MongoDB unterstützt Feld-, Bereichs- und reguläre Abfragen und kann ganze Dokumente, bestimmte Felder von Dokumenten oder zufällige Stichproben in den Abfrageergebnissen anzeigen. MongoDB verwendet Sharding, eine horizontale Partitionierung von Daten in einer Datenbank, für Lastausgleich und Skalierung. Die in einer MongoDB-Datenbank gespeicherten Daten werden auf der Grundlage des vom Benutzer ausgewählten Shard-Schlüssels in Bereiche aufgeteilt und auf verschiedene Shards verteilt.
Eine Reihe von Repliken wird von MongoDB verwendet, um eine hohe Verfügbarkeit der in der Datenbank gespeicherten Daten zu gewährleisten. Jedes Replika-Set besteht aus zwei oder mehr Kopien der Daten, wobei jedes Set-Mitglied zu jedem Zeitpunkt als primäres oder sekundäres Replikat fungieren kann.
TimescaleDB ist eine relationale Open-Source-Datenbank für Zeitreihendaten, die auf PostgreSQL aufbaut. Sie verwendet vollständiges SQL und ist einfach zu bedienen wie eine klassische relationale Datenbank, kann aber Skalierung und andere Funktionen bieten, die normalerweise zweckgebundenen NoSQL-Datenbanken vorbehalten sind.
TimescaleDB wurde als All-in-One-Datenbanklösung für datengesteuerte Anwendungen entwickelt und bietet Benutzern eine speziell entwickelte Zeitreihen-Datenbank in Kombination mit einer klassischen relationalen Datenbank (PostgreSQL) mit voller SQL-Unterstützung. Die beschleunigte Leistung ist eines der Hauptmerkmale von TimescaleDB. Laut den Entwicklern ist diese Datenbank in der Lage, Abfragen im Vergleich zu PostgreSQL, InfluxDB und MongoDB 10 bis 100 Mal schneller auszuführen. Sie behaupten auch, dass TimescaleDB bis zu 10-mal schnellere Einfügungen unterstützt und in der Lage ist, mehr Metriken pro Sekunde pro Server für Workloads mit hoher Kardinalität aufzunehmen.
Die Fähigkeit große Datenmengen zu verarbeiten, ist ein weiteres Hauptmerkmal von TimescaleDB, da es für die effektive Erfassung und Speicherung von IoT-Daten entwickelt wurde. Mit TimescaleDB können Benutzer Hunderte von Milliarden Zeilen und Dutzende von Terabytes an Daten pro Server speichern. Die Datenbank verwendet eine Datentyp-spezifische Komprimierung, wodurch die Speicherkapazität um das bis zu 16-fache erhöht werden kann. Ein weiterer entscheidender Vorteil von TimescaleDB ist die Unterstützung sowohl von relationalen als auch von Zeitreihendatenbanken, wodurch die Benutzer ihre Technologiestapel vereinfachen und relationale Daten neben Zeitreihendaten speichern können.
Prometheus ist eine Open-Source-Anwendung zur Systemüberwachung und Alarmierung, die ursprünglich von SoundCloud entwickelt wurde, einer Online-Audio-Vertriebsplattform und Musik-Sharing-Website. Prometheus sammelt und speichert Echtzeitmetriken in einer Zeitreihendatenbank. Die Sammlung von Zeitreihen wird durch die Verwendung eines HTTP-Pull-Modells ermöglicht. SoundCloud begann 2012 mit der Entwicklung von Prometheus als Open-Source-Projekt, nachdem sie festgestellt hatten, dass die vorhandenen Überwachungstools und Metriken nicht vollständig auf ihre Bedürfnisse zugeschnitten waren.
Prometheus-Datenbanken speichern Zeitreihendaten im Speicher und auf der lokalen Festplatte in einem effizienten benutzerdefinierten Format. Die Skalierung wird durch funktionales Sharding und Federation erreicht. Der lokale Speicher von Prometheus ist auf die Skalierbarkeit und Haltbarkeit eines einzelnen Knotens beschränkt. Anstatt zu versuchen, die Cluster-Speicherung in Prometheus selbst zu lösen, bietet Prometheus eine Reihe von Schnittstellen, die die Integration mit entfernten Speichersystemen ermöglichen.
Prometheus bietet eine funktionale Abfragesprache namens PromQL (Prometheus Query Language), mit der der Benutzer Zeitreihendaten in Echtzeit auswählen und aggregieren kann. Die Ergebnisse ihrer Datenoperationen können als Diagramme visualisiert oder als tabellarische Daten im Ausdrucksbrowser von Prometheus angezeigt werden. Sie können auch über die HTTP-API in externe Systeme exportiert werden.
Daten- oder Prozesshistoriker (manchmal auch Betriebshistoriker oder einfach "Historiker" genannt) sind eine Reihe von Zeitseriendatenbankanwendungen, die für die Erfassung und Speicherung von Daten im Zusammenhang mit industriellen Abläufen entwickelt und typischerweise verwendet werden. Lesen Sie mehr über Datenhistoriker.
Datenhistoriker wurden ursprünglich in der zweiten Hälfte der 1980er Jahre für den Einsatz in industriellen Automatisierungssystemen wie SCADA (Supervisory Control and Data Acquisition) entwickelt. In erster Linie wurden sie für die Bedürfnisse der Prozessindustrie in Branchen wie Öl und Gas, Chemie, Pharmazie, Pipelines und Raffinerien usw. eingesetzt.
Heute werden Prozesshistoriker jedoch branchenübergreifend eingesetzt und dienen als wichtiges Instrument für die Leistungsüberwachung, die übergeordnete Steuerung, die Analytik und die Qualitätssicherung. Sie ermöglichen es Managern von Industrieanlagen und Interessenvertretern sowie Ingenieuren, Datenwissenschaftlern und verschiedenen Maschinenbedienern, auf die Daten zuzugreifen, die von einer Vielzahl von automatisierten Systemen und Sensoren gesammelt werden. Die gesammelten Daten können zur Leistungsüberwachung, Prozessverfolgung oder Geschäftsanalyse genutzt werden. Moderne Historiker enthalten oft auch andere Funktionen für die Nutzung der gesammelten Daten, wie z. B. Berichtsfunktionen, mit denen die Benutzer automatische oder manuelle Berichte erstellen können.
Nachdem wir nun gelernt haben, was Zeitreihendaten sind und wie sie gespeichert werden, wäre der nächste logische Schritt, über die tatsächliche Nutzung von Zeitreihendatenmodellen zu sprechen. An dieser Stelle kommt die Zeitreihenanalyse ins Spiel.
Was ist eine Zeitreihenanalyse?
Die Zeitreihenanalyse bezieht sich auf eine bestimmte Art der Analyse eines Zeitreihendatensatzes - oder einfach einer Abfolge von Datenpunkten, die über einen bestimmten Zeitraum gesammelt wurden um Erkenntnisse, aussagekräftige Statistiken und andere Merkmale dieser Daten zu gewinnen.
Natürlich erfordert die Zeitreihenanalyse Zeitreihendaten, die eine natürliche zeitliche Ordnung aufweisen und in gleichmäßigen Zeitabständen aufgezeichnet wurden. Dies unterscheidet die Zeitreihenanalyse von Querschnittsdatenstudien, bei denen die Daten an einen bestimmten Zeitpunkt gebunden sind und in beliebiger Reihenfolge eingegeben werden können.
Die Zeitreihenanalyse ist auch nicht zu verwechseln mit der Prognose, die eine Art der Zeitreihenanalyse ist, da sie im Grunde historische TS-Datensätze verwendet, um mit demselben Ansatz Vorhersagen zu treffen.
Muster in der Zeitreihenanalyse
Die Analyse von Zeitreihendaten beruht auf der Erkennung und Beobachtung von Mustern, die dazu dienen, mithilfe eines der verfügbaren Modelle tatsächliche Informationen aus einem Datensatz zu extrahieren.
Hier sind einige der häufigsten Muster, die in Zeitreihendaten beobachtet werden.
Arten der Zeitreihenanalyse
Die Erkennung dieser und anderer Muster durch Anwendung verschiedener Modelle auf Zeitreihendatenbanken ist die Art und Weise, wie Sie die Zeitreihenanalyse zur Erreichung verschiedener Ziele einsetzen können.
Nachfolgend finden Sie einige der gängigsten Arten der Zeitreihenanalyse, die je nach Zielsetzung Ihrer Studie eingesetzt werden können.
Vorhersage
Wie wir bereits gelernt haben, werden bei der Prognose historische Zeitreihendaten verwendet, um Vorhersagen zu treffen. Historische Daten werden als Modell für dieselben Daten in der Zukunft verwendet, wobei verschiedene Szenarien mit zukünftigen Plot Points vorhergesagt werden.
Deskriptive Analyse
Die deskriptive Analyse ist die wichtigste Methode, um die oben beschriebenen Muster in Zeitreihendaten zu erkennen (Trends, Zyklen und Saisonalität).
Aufklärungsanalyse
Aufklärende Analysemodelle versuchen, die Daten, die Beziehungen zwischen den Datenpunkten, ihre Ursachen und die Auswirkungen zu verstehen.
Unterbrochene (Interventions-)Analyse
Die unterbrochene (Interventions-)Zeitreihenanalyse, die auch als quasi-experimentelle Analyse bezeichnet wird, dient dazu, Veränderungen in einer langfristigen Zeitreihe vor und nach einer bestimmten Unterbrechung (irgendein äußerer Einfluss oder eine Reihe von Einflüssen) festzustellen, die sich möglicherweise auf die eigentliche Variable auswirken. Oder einfacher ausgedrückt, es wird untersucht, wie sich die Daten einer Zeitreihe durch ein einschneidendes Ereignis verändern können.
Regressionsanalyse
Die Regressionsanalyse wird am häufigsten verwendet, um Beziehungen zwischen einer oder mehreren verschiedenen Zeitreihen zu testen. Im Gegensatz zur Regressionsanalyse bezieht sich die reguläre Zeitreihenanalyse auf die Prüfung von Beziehungen zwischen verschiedenen Punkten in einer einzigen Zeitreihe.
Explorative Analyse
Die explorative Analyse hebt die Hauptmerkmale hervor, die in Zeitreihendaten identifiziert wurden, typischerweise in visuellem Format.
Assoziationsanalyse
Die Assoziationsanalyse wird verwendet, um Assoziationen zwischen zwei beliebigen Merkmalen in einem Zeitreihendatensatz zu ermitteln.
Klassifizierung
Die Klassifizierung wird verwendet, um Eigenschaften von Zeitreihendaten zu identifizieren und zuzuordnen.
Segmentierung
Die Segmentierungsanalyse wird angewendet, um die Zeitreihendaten auf der Grundlage der zugewiesenen Eigenschaften in Segmente aufzuteilen.
Kurvenanpassung
Die Kurvenanpassung wird verwendet, um die Beziehungen zwischen verschiedenen Variablen innerhalb eines Datensatzes zu untersuchen, indem sie entlang einer Kurve angeordnet werden.
Datenmodelle
Lassen Sie uns nun ein wenig über Modelle sprechen, die üblicherweise für Zeitreihendaten verwendet werden. Es gibt eine große Vielfalt an Modellen, die verschiedene Formen und stochastische Prozesse darstellen. Um nicht zu sehr ins Detail zu gehen, werden wir in diesem Artikel nur einige der gängigsten und gebräuchlichsten Modelle beschreiben.
Betrachtet man die Prozessebene, so lassen sich drei große Klassen von linearen Zeitreihenmodellen unterscheiden.
Diese lauten wie folgt:
Wo findet man Zeitreihendatensätze?
Für die Durchführung von Zeitreihenanalysen benötigen Sie normalerweise eine relativ große Anzahl von Datenpunkten, um Zuverlässigkeit und Konsistenz zu gewährleisten.
Ein Problem, das Ihre Möglichkeiten zur Nutzung von Zeitreihendaten für Analysen, Prognosen und andere Zwecke einschränken kann, ist das Fehlen von qualitativ hochwertigen, umfangreichen Datensätzen. Dieses Problem lässt sich jedoch leicht lösen, denn es gibt eine ganze Reihe von Zeitreihendatensätzen, die enorme Datenmengen enthalten und online öffentlich zugänglich sind.
Hier sind einige hervorragende Quellen, in denen Sie eine große Anzahl von hochvariablen Datensätzen finden können.
Trotz all dieser wunderbaren Quellen von Zeitreihendaten auf der ganzen Welt können Sie je nach Ihren spezifischen Bedürfnissen vor dem Problem stehen, dass Sie nicht genügend Daten haben. In einem solchen Fall besteht die einzige Lösung darin, einen eigenen Zeitreihendatensatz zu erstellen.
Die Erstellung und Verwendung von Zeitreihendaten ist ein sehr umfangreiches Thema, für das man einen eigenen ausführlichen Leitfaden oder ein eigenes Tutorial bräuchte, um alle Aspekte dieser Arbeit abzudecken. Wir können jedoch sagen, dass das Sammeln von Zeitreihendaten, das Erstellen von Datensätzen und deren Nutzung für verschiedene Zwecke dank einer Reihe großartiger Bibliotheken und Frameworks, die die Arbeit mit Zeitreihendaten erleichtern, von Tag zu Tag einfacher wird.
Die besten Python-Bibliotheken für die einfachere Erstellung und Nutzung von Zeitreihendatensätzen
Werfen wir einen Blick auf mehrere großartige Python-Bibliotheken und -Pakete, die Sie zur Erstellung von Zeitreihendaten verwenden können, und nutzen Sie sie anschließend, um Modelle zu erstellen, Vorhersagen zu generieren usw.
Ein weiteres wichtiges Element bei der Nutzung von Zeitreihendaten ist die Visualisierung. Um wertvolle Informationen und Erkenntnisse zu gewinnen, müssen Ihre Daten in Form einer zeitlichen Visualisierung dargestellt werden, um die Veränderungen zu verschiedenen Zeitpunkten aufzuzeigen.
Die Visualisierung von Zeitreihendaten erfolgt in der Regel mit spezialisierten Tools, die den Benutzern mehrere Visualisierungstypen und -formate zur Auswahl bieten. Werfen wir einen Blick auf einige der beliebtesten Datenvisualisierungsoptionen.
Ein Diagramm ist eine visuelle Darstellung von Daten in einer geordneten Weise. Zeitreihendiagramme, auch Zeitreihendiagramme oder Zeitreihendiagramme genannt, sind wahrscheinlich das gebräuchlichste Instrument zur Datenvisualisierung, das zur Veranschaulichung von Datenpunkten in einem zeitlichen Maßstab verwendet wird, wobei jeder Punkt sowohl der Zeit als auch der Maßeinheit entspricht.
Sind Zeitreihendiagramme und Zeitreihentabellen das Gleiche?
Auch wenn diese beiden Begriffe häufig synonym verwendet werden, sind sie nicht genau dasselbe. Diagramme ist der Begriff für alle Arten von Darstellungen von Zeitreihendaten, um die Informationen klar und verständlich zu machen. Diagramme, da
bei denen es sich um mathematische Diagramme handelt, die die Beziehung zwischen den Dateneinheiten über einen bestimmten Zeitraum hinweg darstellen, werden in der Regel als eine Art von Diagrammen zur Visualisierung von Zeitreihendaten verwendet.
Echtzeitdiagramme, auch bekannt als Datenstreaming-Diagramme, werden verwendet, um Zeitreihendaten in Echtzeit anzuzeigen. Das bedeutet, dass ein Echtzeitdiagramm automatisch alle paar Sekunden aktualisiert wird oder wenn ein neuer Datenpunkt vom Server empfangen wird.
Hier sind einige der gängigsten Arten von Zeitreihen darzustellen.
Lineares Diagramme
Ein Liniendiagramm ist wahrscheinlich die einfachste Art, Zeitreihendaten zu visualisieren. Es verwendet Punkte, die miteinander verbunden sind, um die Veränderungen zu veranschaulichen. Da die Zeit die unabhängige Variable ist, wird sie in Liniendiagrammen immer auf der horizontalen Achse dargestellt.
Histogramme
Histogramme visualisieren Zeitreihendaten, indem sie sie in “Bins” (Klassen) gruppieren, wobei die “Bins” als segmentierte Spalten dargestellt werden. Alle “Bins” in einem Histogramm haben die gleiche Breite, während ihre Höhe proportional zur Anzahl der Datenpunkte im “Bin” ist.
Punktdiagramme
Punktdiagramme stellen Datenpunkte vertikal mit punktförmigen Markierungen dar, wobei die Höhe jeder Markierung die Häufigkeit der Elemente in jedem Intervall angibt.
Streudiagramme
Bei Streudiagrammen werden die gleichen punktförmigen Markierungen verwendet, die über den Diagrammbereich des Diagramms verstreut sind und jeden Datenpunkt darstellen. Streudiagramme werden in der Regel zur Visualisierung von Zufallsvariablen in Zeitreihendaten verwendet.
Trendlinie
Die Trendlinie basiert auf Standardlinien und Punktdiagrammen und fügt eine gerade Linie hinzu, die mindestens zwei Punkte auf einem Diagramm verbinden muss und sich in die Zukunft erstreckt, um Bereiche der Unterstützung und des Widerstands zu identifizieren.
Zeitreihendaten können in Diagramme, Grafiken und andere Arten von konsumierbaren analytischen Informationen umgewandelt werden, die Unternehmen (oft unschätzbare) Einblicke gewähren. Zeitreihen-Visualisierungstools, die in Form von Software oder SaaS-Lösungen angeboten werden, sind erforderlich, um die Daten zu analysieren und in einer verständlichen Form zu präsentieren.
Mit Tools zur Visualisierung von Zeitreihendaten können Unternehmen Dashboards mit leicht verständlichen Visualisierungen der wichtigsten Trends und KPIs erstellen. Moderne Lösungen zur Datenvisualisierung verfügen immer häufiger über eine einfache Drag-and-Drop-Oberfläche, die es auch Benutzern ohne technische und/oder Programmierkenntnisse ermöglicht, mit Zeitreihendaten zu arbeiten und Dashboards zu erstellen. Diese Tools sind in der Regel speziell für die Visualisierung von bereits organisierten Zeitreihendaten konzipiert und nicht für die Analyse von Zeitreihendaten gedacht. Einige von ihnen können jedoch zusätzliche Funktionen enthalten, die es den Benutzern ermöglichen, mehrere Arten von Aktivitäten durchzuführen, wie z. B. die Erkundung, Organisation und Interaktion mit Daten sowie die Zusammenarbeit und den Austausch von Daten zwischen Mitgliedern derselben Organisation.
Bei der Auswahl eines Datenvisualisierungstools, ist es wichtig, dass die wichtigsten allgemeinen Anforderungen erfüllt sind:
Hier ist eine Liste der besten Tools für die Darstellung von Zeitreihendaten auf der Grundlage der oben genannten Anforderungen.
Ich hoffe, dieser Artikel hat Ihnen geholfen, die Grundlagen von Zeitreihendaten besser zu verstehen. Heutzutage ist es von entscheidender Bedeutung, sich über den wahren Wert von Daten bewusst zu sein. Wahrscheinlich haben Sie schon einmal den Satz "Daten sind das neue Gold" gehört. In der aktuellen Ära der digitalen Transformation und der Industrie 4.0/5.0-Lösungen ist die Fähigkeit, Zeitreihendaten zu sammeln, zu speichern und zu nutzen, einer der entscheidenden Faktoren und Schlüssel zum Geschäftserfolg.
Clarify ist eine next-generation Lösung, die neues Wissen über Zeitreihendaten bietet und dazu beiträgt, Datenpunkte von Datenhistorikern, SCADA- und IoT-Geräten für die gesamte Belegschaft - vom Außendienstmitarbeiter bis zum Datenwissenschaftler - nutzbar zu machen.
Clarify macht es einfach, Zeitreihendaten aus Ihrem IoT-Netzwerk zu visualisieren, über das Web und mobile Geräte darauf zuzugreifen, Daten mit anderen Mitarbeitern zu teilen und in Echtzeit zusammenzuarbeiten. Mit Clarify kann sich Ihr Unternehmen auf die wichtigsten Geschäftsziele konzentrieren, anstatt Dashboards zu konfigurieren oder teure kundenspezifische Lösungen zu entwickeln.
We use data (in the form of cookies) to give you a better experience on our web page.
Find out how we handle your data in our privacy policy