Einführung in Zeitreihendatenbanken |. Detaillierte Erläuterung der Eigenschaften von Zeitreihendatenbanken und ihrer Unterschiede zu herkömmlichen Datenbanken

In den letzten Jahren haben die zunehmende Beliebtheit des Internets der Dinge (IoT) und der Bedarf an Echtzeitdaten zu einem deutlichen Anstieg der Einführung von Zeitreihendatenbanken (TSDB) geführt. Laut der Rangliste der DB-Engines übersteigt die Beliebtheit von TSDB die aller anderen Datenbanktypen und liegt nur hinter Graph DBMS an zweiter Stelle .

Als wichtiges Werkzeug zur Speicherung, Verwaltung und Analyse von Zeitreihendaten dürfte die Nachfrage nach Zeitreihendatenbanken (TSDB) auch in Zukunft weiter steigen. Wenn Sie noch nicht viel darüber wissen, erfahren Sie in diesem Artikel umfassend, was eine Zeitreihendatenbank ist und warum Sie eine Datenbank für Zeitreihendaten benötigen.

Was sind Zeitreihendaten?

Wenn wir über die Popularität von Zeitreihendatenbanken in den letzten Jahren sprechen, müssen wir zuerst über Zeitreihendaten sprechen. Warum ist für die Verarbeitung eine speziell optimierte Datenbank erforderlich? Kann eine allgemeine relationale Datenbank dies nicht erfüllen?

Aus einer sehr populären Sicht handelt es sich bei den sogenannten Zeitreihendaten um einige Werte (Wert), die sich mit der Zeit ändern. Gleichzeitig werden diese Werte von einigen Tags begleitet, die aus Schlüssel = Wert bestehen.

Enthält im Allgemeinen die folgenden drei Attribute (aus Wikipedia):

Zeitfolgen

Ein eindeutiger Bezeichner, der aus einem Namen (oft als Metrik bezeichnet) und einer Reihe von Schlüssel=Wert-Beschriftungen (Bezeichnungen oder allgemein als Tags bezeichnet) besteht.

Schlüssel-Wert-Paar (Zeitstempel, Wert)

Schlüssel-Wert-Paare, die aus Zeitstempeln und Werten bestehen und natürlich nach Zeitstempeln sortiert sind. Diese Schlüssel-Wert-Paare werden im Allgemeinen als Stichproben bezeichnet.

Wert

Der Wert in Punkt 2 ist im Allgemeinen ein numerischer Wert, wie z. B. Temperatur, Luftfeuchtigkeit, CPU, Speichernutzung usw., es kann sich aber auch um eine beliebige Datenstruktur (sowohl strukturiert als auch unstrukturiert) handeln.

Fall von Zeitreihendaten

Machen Sie zum Beispiel einen Screenshot der 15-Tage-Wettervorhersage einer Wetter-Website für Yuhang:

Bei der Analyse der beiden Linien der maximalen Temperatur und der minimalen Temperatur sind die drei Attribute hier:

  1. Die Zeitleisten sind: a. Tägliche Höchsttemperatur + <region=Yuhang> b. Tägliche Mindesttemperatur + <region=Yuhang>
  2. Die aus dem Zeitstempel und dem Wert der Höchsttemperatur bestehende Sequenz besteht aus 15 Schlüssel-Wert-Paaren vom 29.08. bis zum 06.09., und der Wert ist die tägliche Höchsttemperatur. Die Mindesttemperaturen sind ähnlich.
  3. Hier ist Wert die Temperatur, also ein numerischer Wert. Beispielsweise beträgt die höchste Temperatur am 29.08. 36 Grad Celsius und die niedrigste Temperatur 25 Grad Celsius.

Neben Wettervorhersageinformationen sind auch Zeitreihendaten in den folgenden Bereichen weit verbreitet:

Aktienkurs : Ermöglicht Aktienanalysten und Händlern, den Trend und die Richtung eines bestimmten Aktienkurses zu verstehen.

Gesundheitsüberwachung : Wird im medizinischen Bereich zur Überwachung der Herzfrequenz oder anderer Gesundheitswerte von Patienten verwendet, die möglicherweise bestimmte Medikamente einnehmen.

Physikalische Sensoren für die Industrie und das Internet der Dinge : einschließlich verschiedener Temperatur-, Feuchtigkeits-, Geschwindigkeits-, Beschleunigungs-, Richtungs-, Herzfrequenz-, Blutsauerstoff- und anderer Sensoren, die in verschiedenen Smartphones, Smart Cars und Smart Homes usw. enthalten sind und in der Fertigung weit verbreitet sind Verschiedene Sensoren erzeugen ständig und in festen oder unregelmäßigen Abständen riesige Mengen sensorischer Daten, die hauptsächlich für die tägliche und anormale Überwachung von Geräten und menschlichen Körpern sowie für intelligente Anwendungen verwendet werden, die auf dieser massiven Datengewinnung basieren (z (z. B. Produktionslinienoptimierung, intelligente Fertigung, autonomes Fahren) usw.

Softwaresensoren : B. die Überwachung aufdringlicher Sonden in herkömmlichen DevOps, nicht aufdringliche Sonden in Cloud-nativen Umgebungen (z. B. die derzeit beliebten nicht aufdringlichen Sondenlösungen basierend auf eBPF und Service Mesh-Datenebenensonden), verschiedene Software Der Hauptzweck verschiedener Indikatoren und eingebettete Daten dienen der Überwachung täglicher und anormaler Softwareanwendungen, um den kontinuierlichen und stabilen Betrieb von Geschäftsdiensten sicherzustellen. In Verbindung mit der aktuellen Entwicklung des AIOps-Bereichs werden auch höhere Anforderungen an den Umfang und die Granularität der Zeitreihendatennutzung gestellt.

Eigenschaften von Zeitreihendaten

  • Daten werden relativ häufig und stabil generiert , und die Häufigkeit ist im Allgemeinen stabil und ändert sich nicht mit den täglichen Aktivitätszyklen der Menschen. Es gibt viele Arten von Sensoren, gepaart mit einer großen Anzahl von Etiketten für Branchen und geografische Standorte, der Datenumfang und die Zeitpläne sind extrem groß. Und der Umfang dieser Daten nimmt mit der Beliebtheit intelligenter Geräte (tragbare Geräte, intelligente Autos, intelligente Fertigung) und den anspruchsvolleren Anforderungen der Menschen an diese Datenanwendungen rapide zu.
  • Die Änderungseigenschaften von Daten ähneln eher der Append-Only-Methode . Daten werden kontinuierlich hinzugefügt, und es gibt weniger Aktualisierungsszenarien (aber es kommt immer noch zu Datenverzögerungen, insbesondere in schwachen Netzwerkumgebungen. Daten werden normalerweise basierend auf der Ablaufzeit gelöscht). . Stapelweise für einen bestimmten Zeitraum löschen.
  • Was die Datenanwendungen betrifft, so sind die häufigsten Anwendungen die tägliche und abnormale Überwachung . Basierend auf diesen Daten werden visuelle Überwachungsberichte und Alarmsysteme erstellt, gefolgt von der Vorhersage zukünftiger Trends, d. h. der Zeitreihenvorhersage, insbesondere im Finanzbereich.

Warum Zeitreihendaten so wichtig sind

Obwohl Zeitreihendaten kein neuer Datentyp sind, haben ihre Beliebtheit und Nutzung in den letzten Jahren deutlich zugenommen, wie eine Analyse von DB-Engines ergab. Es gibt mehrere Faktoren, die nicht ignoriert werden können, darunter:

  • Die Entwicklung des Internets und die Digitalisierung vieler Branchen . Dies führt direkt zur Generierung umfangreicher Zeitreihendaten, wie z. B. Website-Verkehr, Social-Media-Aktivitäten und Sensormesswerte.
  • Entwicklung von Algorithmen für maschinelles Lernen . Diese Algorithmen wie das wiederkehrende neuronale Netzwerk (RNN) und das Netzwerk mit langem Kurzzeitgedächtnis (LSTM) eignen sich für die Analyse von Zeitreihendaten, wodurch es für Menschen einfacher wird, wertvolle Informationen aus dieser Art von Daten zu extrahieren, was Zeitreihendaten die Möglichkeit gibt um weitere Werte zu generieren.
  • Der Aufstieg der Predictive Analytics . Dies macht Zeitreihendaten zu einem wichtigen Instrument zur Vorhersage von Trends und zukünftigen Ergebnissen.
  • Bedürfnisse in Bereichen wie Finanzen, medizinische Versorgung und Transport . In diesen Bereichen besteht ein zunehmender Bedarf an Entscheidungen in Echtzeit, und die Analyse von Zeitreihendaten kann mit diesen sich schnell ändernden Situationen umgehen.

Was ist eine Zeitreihendatenbank?

Zeitreihendatenbank (Time Series Database) ist gemäß der Wikipedia-Definition eine Datenbank, die speziell für die Verarbeitung von Zeitreihendaten optimiert ist. Sie ist eine Art Domänendatenbank und wurde für Datenverarbeitungsdienste in bestimmten Geschäftsfeldern entwickelt, beispielsweise für die Verarbeitung von Diagrammen und die Speicherung von Diagrammen Die Dokumentendatenbank wird zum Speichern und Abrufen von halbstrukturierten Dokumenten verwendet, und die Suchmaschine wird speziell zum Abrufen von unstrukturiertem Text verwendet.

Eigenschaften der Zeitreihendatenbank

Um die oben beschriebenen Merkmale und Herausforderungen im Zusammenhang mit Zeitreihendaten zu bewältigen, setzt TSDB eine Reihe von Techniken ein. Zu diesen typischen Merkmalen zählen unter anderem:

Protokollstrukturierter Zusammenführungsbaum (LSM-Baum)

LSM-Tree ist eine festplattenbasierte Datenstruktur, die für schreibintensive Arbeitslasten optimiert ist und eine effiziente Datenaufnahme und -speicherung durch Zusammenführen und Komprimieren von Daten in einer Reihe von Ebenen ermöglicht. Dies reduziert die Schreibverstärkung und bietet eine bessere Schreibleistung im Vergleich zu herkömmlichen B-Bäumen.

Zeitbasierte Partitionierung

Zeitreihendatenbanken unterteilen Daten in der Regel nach Zeitintervallen, wodurch Abfragen schneller und effizienter werden und die Aufbewahrung und Verwaltung der Daten einfacher wird. Dieser Ansatz hilft dabei, aktuelle, häufig aufgerufene Daten von älteren, weniger häufig aufgerufenen Daten zu trennen und so die Speicher- und Abfrageleistung zu optimieren.

Datenkompression

Zeitreihendatenbanken nutzen verschiedene Komprimierungstechniken wie Delta-Kodierung, Gorilla-Komprimierung oder Wörterbuch-Kodierung, um den Speicherplatzbedarf zu reduzieren. Diese Techniken nutzen zeitliche und wertbasierte Muster in Zeitreihendaten, um eine effiziente Speicherung ohne Verlust der Datentreue zu ermöglichen.

Integrierte zeitbasierte Funktionen und Aggregationen

Zeitreihendatenbanken bieten native Unterstützung für zeitbasierte Funktionen wie gleitende Durchschnitte, Prozentsätze und zeitbasierte Aggregationen. Diese integrierten Funktionen ermöglichen es Benutzern, komplexe Zeitreihenanalysen effizienter und mit weniger Rechenaufwand im Vergleich zu herkömmlichen Datenbanken durchzuführen.

Warum sollten Sie sich für eine Zeitreihendatenbank entscheiden?

Aus der obigen Einführung haben wir auch eine vorläufige Antwort darauf, warum wir eine Datenbank im spezifischen Bereich der Zeitreihendatenbank benötigen.

Basierend auf den Merkmalen, dem Umfang und der Anwendung von Zeitreihendaten kann die Zeitreihendatenbank gezielte Optimierungen vornehmen: Der Speicher verwendet einen benutzerdefinierten Komprimierungsalgorithmus, das Speicherformat verwendet ein gemischtes Zeilen-Spalten-Speicherformat, das für Massenschreib- und Abfrageszenarien von Zeitreihen optimiert ist. Abfrageoperatoren führen mehr zeitfensterbezogene Funktionen für das Timing ein, optimieren das Abfrageprotokoll für Timing-Modelle und übernehmen eine flexiblere Ablaufstrategie für die Datenlöschung .

Diese domänenspezifischen Optimierungen können Zeitreihendatenbanken im Hinblick auf Domänenfunktionen, Leistung, Kosten, Stabilität und andere Dimensionen große Vorteile gegenüber Allzweckdatenbanken verschaffen.

Zusammenfassen

Zeitreihendatenbanken werden häufig im Internet der Dinge, in der Finanzdatenanalyse, in Überwachungs- und Alarmsystemen, im Energiemanagement, bei Anwendungen im Gesundheitswesen und in anderen „zeitkritischen“ Branchen eingesetzt. Durch den Einsatz von Zeitreihendatenbanken zur Analyse und Vorhersage von Zeitreihendaten können Unternehmen wertvolle Informationen aus den Daten gewinnen, so fundiertere Entscheidungen treffen und einzigartige Wettbewerbsvorteile erzielen.

Zeitreihendatenbanken und relationale Datenbanken sind jedoch nicht inkompatibel. Wie können Zeitreihendaten und Geschäftsdaten bequemer und besser kombiniert werden, um einen größeren Geschäftswert zu erzielen? Seriendatenbank muss gelöst werden.


Über Greptime:

Greptime Greptime Technology hat es sich zur Aufgabe gemacht, effiziente Datenspeicherungs- und Analysedienste in Echtzeit für Bereiche bereitzustellen, die große Mengen an Zeitreihendaten erzeugen, wie etwa intelligente Autos, das Internet der Dinge und Beobachtbarkeit, und Kunden dabei zu helfen, den großen Wert von Daten auszuschöpfen. Derzeit gibt es drei Hauptprodukte:

  • GreptimeDB ist eine in der Rust-Sprache geschriebene Zeitreihendatenbank. Sie ist Open Source, cloudnativ und hochkompatibel. Sie hilft Unternehmen, Zeitreihendaten in Echtzeit zu lesen, zu schreiben, zu verarbeiten und zu analysieren und gleichzeitig die langfristigen Speicherkosten zu senken.

  • GreptimeCloud kann Benutzern vollständig verwaltete DBaaS-Dienste bereitstellen, die hochgradig in Observability, Internet of Things und andere Bereiche integriert werden können.

  • GreptimeAI ist eine auf LLM-Anwendungen zugeschnittene Observability-Lösung.

  • Die integrierte Fahrzeug-Cloud-Lösung ist eine Zeitreihen-Datenbanklösung, die tief in die tatsächlichen Geschäftsszenarien von Automobilunternehmen eindringt und die tatsächlichen Geschäftsprobleme löst, nachdem die Fahrzeugdaten des Unternehmens exponentiell gewachsen sind.

GreptimeCloud und GreptimeAI wurden offiziell getestet. Folgen Sie dem offiziellen Account oder der offiziellen Website für die neuesten Entwicklungen! Wenn Sie an der Enterprise-Version von GreptimDB interessiert sind, können Sie sich gerne an den Assistenten wenden (suchen Sie auf WeChat nach greptime, um den Assistenten hinzuzufügen).

Offizielle Website: https://greptime.cn/

GitHub: https://github.com/GreptimeTeam/greptimedb

Dokumentation: https://docs.greptime.cn/

Twitter: https://twitter.com/Greptime

Slack: https://www.greptime.com/slack

LinkedIn: https://www.linkedin.com/company/greptime

Ein in den 1990er Jahren geborener Programmierer hat eine Videoportierungssoftware entwickelt und in weniger als einem Jahr über 7 Millionen verdient. Das Ende war sehr bestrafend! High-School-Schüler erstellen im Rahmen einer Coming-of-Age-Zeremonie ihre eigene Open-Source-Programmiersprache – scharfe Kommentare von Internetnutzern: Der inländische Dienst Taobao (taobao.com) verließ sich aufgrund des grassierenden Betrugs auf RustDesk und stellte die inländischen Dienste ein und startete die Arbeit zur Optimierung der Webversion von Java neu 17 ist die am häufigsten verwendete Java LTS-Version. Windows 11 erreicht weiterhin einen Rückgang. Open Source Daily unterstützt die Übernahme von Open Source Rabbit R1; Electric schließt die offene Plattform Apple veröffentlicht M4-Chip Google löscht Android Universal Kernel (ACK) Unterstützung für RISC-V-Architektur Yunfeng ist von Alibaba zurückgetreten und plant, in Zukunft unabhängige Spiele für Windows-Plattformen zu produzieren
{{o.name}}
{{m.name}}

Ich denke du magst

Origin my.oschina.net/u/6839317/blog/11046036
Empfohlen
Rangfolge