Timestream für InfluxDB als Ziel - Amazon Timestream

Amazon Timestream for LiveAnalytics wird ab dem 20. Juni 2025 nicht mehr für Neukunden verfügbar sein. Wenn Sie Amazon Timestream für verwenden möchten LiveAnalytics, melden Sie sich vor diesem Datum an. Bestandskunden können den Service weiterhin wie gewohnt nutzen. Weitere Informationen finden Sie unter Amazon Timestream zur Änderung der LiveAnalytics Verfügbarkeit.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Timestream für InfluxDB als Ziel

Amazon Timestream for InfluxDB ist ein verwalteter Zeitreihen-Datenbankservice AWS , der Open-Source-InfluxDB für Echtzeitanwendungen verwendet. APIs Er bietet eine einfache Einrichtung, Bedienung und Skalierung und liefert Abfragen mit Antwortzeiten im einstelligen Millisekundenbereich.

Der erste Schritt, um festzustellen, ob Timestream for InfluxDB ein geeignetes Migrationsziel für Ihren Anwendungsfall ist, besteht darin, die Kardinalität Ihres Timestreams für die Tabelle zu bestimmen. LiveAnalytics Wir haben ein Skript entwickelt, das die Tabellenkardinalität in Timestream für berechnet. LiveAnalytics Diese Berechnung dient zwei Zwecken:

  1. Überprüft, ob die Kardinalität unter 10 Millionen liegt, anhand derer festgestellt werden kann, ob Timestream for InfluxDB Ihren Anwendungsfall bewältigen kann.

  2. Hilft Ihnen bei der Entscheidung, welcher Timestream for InfluxDB-Instance-Typ verwendet werden soll.

Die Kardinalität in InfluxDB ist die Anzahl der eindeutigen Messungen, Tags und Feldtastenkombinationen in einem InfluxDB-Bucket. In Timestream finden Sie die InfluxDB-Dokumentation zum Kardinalitätsmanagement, um zu erfahren, wie die Überschreitung der empfohlenen Grenzwerte die Abfrageleistung beeinträchtigen und den Speicherverbrauch erhöhen kann. Vergleichen Sie Ihre erwarteten Abfragemuster mit repräsentativen Datenstichproben, bevor Sie Ihre Instanzauswahl abschließen, um sicherzustellen, dass Ihre Abfragen auch nach der Migration performant bleiben. Achten Sie auf speicherintensive Aggregationsabfragen, die sich möglicherweise anders verhalten als in Timestream for. LiveAnalytics Wählen Sie bei der Migration von Timestream for LiveAnalytics Ihre InfluxDB-Instance-Spezifikationen sorgfältig auf der Grundlage der Kardinalität Ihres Datensatzes aus, da sich dies direkt auf die Leistung und den Ressourcenbedarf auswirkt. Wir empfehlen, andere Ziele in Betracht zu ziehen, wenn Ihre Datenkardinalität mehr als 10 Millionen beträgt.

Überblick über das Skript zur Berechnung der Kardinalität

Das Skript zur Berechnung der Kardinalität berechnet die Kardinalität eines Timestreams für eine Tabelle. LiveAnalytics Wenn die Kardinalität unter 10 Millionen liegt, empfiehlt das Skript einen Timestream für den InfluxDB-Instanztyp. Unter Verwendung der standardmäßigen Schemazuordnung wird die Kardinalität berechnet, indem die Gesamtzahl der eindeutigen Kombinationen von Dimensionen und Kennzahlnamen berechnet wird. Durch die Auswahl der richtigen Protokoll-Tags (entspricht den Dimensionen in Timestream for LiveAnalytics) können Sie Ihre Daten automatisch indizieren und Ihre Daten mithilfe von Tags effizient filtern. Das Skript bietet auch die Möglichkeit, bestimmte Dimensionen bei der Berechnung der Kardinalität auszuschließen. Falls dies auf Ihren Fall zutrifft, d. h. wenn Sie bestimmte Dimensionen nicht zum Filtern von Daten in SQL-Abfragen verwenden (insbesondere nicht als Prädikate), können Sie diese Dimensionen von der Kardinalitätsberechnung ausschließen. Später können Sie sie in den nächsten Migrationsschritten als Felder aufnehmen (entspricht den Kennzahlen in Timestream for LiveAnalytics).

Voraussetzungen und Installation

Weitere Informationen finden Sie im Abschnitt Voraussetzungen und zur Installation in der README-Datei des Kardinalitätsskripts.

Grundlegende Verwendung

Um die Kardinalität einer Tabelle, example_table, in der Datenbank example_database zu bestimmen, kann das Skript auf folgende Weise verwendet werden:

python3 cardinality.py \ --table-name example_table \ --database-name example_database

Dadurch wird die folgende Ausgabe erzeugt:

Cardinality of "example_database"."example_table": 160 Your recommended Timestream for InfluxDB type is: db.influx.medium

Empfehlungen

Das Skript scannt automatisch die gesamte Tabelle, um die Kardinalität zu berechnen, und bietet gleichzeitig Zeitfilteroptionen für eine optimale Abfrageausführung. Wir empfehlen die Implementierung von Zeitfiltern, wenn Ihre Daten konsistente Dimensionen enthalten und wenn die Analyse unterschiedlicher Dimensionsvariationen in der gesamten Tabelle ähnliche Ergebnisse liefert wie die Analyse bestimmter Zeitbereiche. Dieser Ansatz gewährleistet eine effiziente und leistungsstarke Abfrageausführung.

Weitere Informationen finden Sie in der README-Datei des Kardinalitätsskripts.