Timestream pour InfluxDB en tant que cible - Amazon Timestream

Amazon Timestream LiveAnalytics for ne sera plus ouvert aux nouveaux clients à compter du 20 juin 2025. Si vous souhaitez utiliser Amazon Timestream LiveAnalytics pour, inscrivez-vous avant cette date. Les clients existants peuvent continuer à utiliser le service normalement. Pour plus d'informations, consultez Amazon Timestream LiveAnalytics pour connaître les modifications de disponibilité.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Timestream pour InfluxDB en tant que cible

Amazon Timestream pour InfluxDB est un service de base de données chronologique géré qui utilise InfluxDB open source pour les applications AWS en temps réel. APIs Il permet une configuration, un fonctionnement et une mise à l'échelle faciles, fournissant des requêtes avec des temps de réponse à un chiffre en millisecondes.

La première étape pour déterminer si Timestream pour InfluxDB est une cible de migration appropriée pour votre cas d'utilisation consiste à déterminer la cardinalité de votre Timestream pour la table. LiveAnalytics Nous avons développé un script qui calcule la cardinalité des tables dans Timestream pour. LiveAnalytics Ce calcul répond à deux objectifs :

  1. Vérifie si la cardinalité est inférieure à 10 millions, ce qui aidera à déterminer si Timestream for InfluxDB peut gérer votre cas d'utilisation.

  2. Vous aide à décider quel Timestream pour le type d'instance InfluxDB utiliser.

La cardinalité dans InfluxDB est le nombre de mesures, de balises et de combinaisons de touches de champ uniques dans un bucket InfluxDB. Reportez-vous à Timestream pour la documentation d'InfluxDB sur la gestion de la cardinalité pour comprendre comment le dépassement des limites recommandées peut dégrader les performances des requêtes et augmenter la consommation de mémoire. Comparez vos modèles de requêtes prévus à des échantillons de données représentatifs avant de finaliser la sélection de votre instance afin de garantir que vos requêtes restent performantes après la migration. Faites attention aux requêtes d'agrégation gourmandes en mémoire qui peuvent se comporter différemment de celles de Timestream for. LiveAnalytics Lorsque vous migrez depuis Timestream pour LiveAnalytics, sélectionnez soigneusement les spécifications de votre instance InfluxDB en fonction de la cardinalité de votre ensemble de données, car cela a un impact direct sur les performances et les besoins en ressources. Nous vous recommandons d'envisager d'autres destinations si la cardinalité de vos données est supérieure à 10 millions.

Présentation du script de calcul de la cardinalité

Le script de calcul de cardinalité calcule la cardinalité d'un flux temporel pour une table. LiveAnalytics Si la cardinalité est inférieure à 10 millions, le script recommande un Timestream pour le type d'instance InfluxDB. À l'aide du mappage du schéma par défaut, la cardinalité est calculée en calculant le total des combinaisons uniques de dimensions et de nom de mesure. Le choix des balises de protocole de ligne appropriées (équivalentes aux dimensions de Timestream pour LiveAnalytics) vous permet d'indexer automatiquement vos données et de les filtrer efficacement à l'aide de balises. Le script fournit également la possibilité d'exclure des dimensions spécifiques lors du calcul de la cardinalité. Le cas échéant, c'est-à-dire si vous n'utilisez pas certaines dimensions pour filtrer les données dans les requêtes SQL (en particulier si vous ne les utilisez pas comme prédicats), vous pouvez exclure ces dimensions du calcul de cardinalité. Plus tard, vous pourrez les ingérer sous forme de champs (équivalent aux mesures de Timestream pour LiveAnalytics) lors des prochaines étapes de migration.

Prérequis et installation

Consultez la section Conditions préalables et l'installation dans le fichier README du script de cardinalité.

Utilisation de base

Pour déterminer la cardinalité d'une table, example_table, dans la base de données example_database, le script peut être utilisé de la manière suivante :

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

Cela produit le résultat suivant :

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

Recommandations

Le script analyse automatiquement l'ensemble de la table pour calculer la cardinalité tout en proposant des options de filtre temporel pour une exécution optimale des requêtes. Nous vous suggérons de mettre en œuvre des filtres temporels lorsque vos données comportent des dimensions cohérentes et lorsque l'analyse de variations de dimensions distinctes sur l'ensemble du tableau donne des résultats similaires à ceux de l'analyse de plages de temps spécifiques. Cette approche garantit une exécution efficace et performante des requêtes.

Pour plus d'informations, consultez le fichier README du script de cardinalité.