Timestream para InfluxDB como destino - Amazon Timestream

Para obtener capacidades similares a las de Amazon Timestream para LiveAnalytics, considere Amazon Timestream para InfluxDB. Ofrece una ingesta de datos simplificada y tiempos de respuesta a las consultas en milisegundos de un solo dígito para realizar análisis en tiempo real. Obtenga más información aquí.

Timestream para InfluxDB como destino

Amazon Timestream para InfluxDB es un servicio de base de datos de serie temporal administrado en AWS que usa API de InfluxDB de código abierto para aplicaciones de serie temporal en tiempo real. Ofrece una configuración, operación y escalado sencillos, y consultas con tiempos de respuesta de milisegundos de un solo dígito.

El primer paso para determinar si Timestream para InfluxDB es un destino de migración adecuado para su caso de uso es determinar la cardinalidad de la tabla de Timestream para LiveAnalytics. Hemos desarrollado un script que calcula la cardinalidad de las tablas en Timestream para LiveAnalytics. Este cálculo tiene dos fines:

  1. Comprueba si la cardinalidad es inferior a 10 millones, lo que ayudará a determinar si Timestream para InfluxDB puede gestionar su caso de uso.

  2. Le ayuda a decidir qué tipo de instancia de Timestream para InfluxDB debe usar.

La cardinalidad en InfluxDB es el número de medidas, etiquetas y combinaciones de teclas de campo únicas en un bucket de InfluxDB. Consulte Timestream para la documentación de InfluxDB sobre la administración de la cardinalidad para comprender cómo superar los límites recomendados puede reducir el rendimiento de las consultas y aumentar el consumo de memoria. Compare los patrones de consulta previstos con muestras de datos representativas antes de finalizar la selección de instancias para asegurarse de que las consultas sigan funcionando correctamente después de la migración. Preste atención a las consultas de agregación que consumen mucha memoria y que podrían comportarse de forma diferente que en Timestream para LiveAnalytics. Al migrar desde Timestream para LiveAnalytics, seleccione cuidadosamente las especificaciones de su instancia de InfluxDB en función de la cardinalidad de su conjunto de datos, ya que esto afecta directamente al rendimiento y a las necesidades de recursos. Le recomendamos que considere otros destinos si la cardinalidad de los datos es superior a 10 millones.

Descripción general del script de cálculo de cardinalidad

El script de cálculo de cardinalidad calcula la cardinalidad de una tabla de Timestream para LiveAnalytics. Si la cardinalidad es inferior a 10 millones, el script recomienda un tipo de instancia de Timestream para InfluxDB. Con el esquema de mapeo predeterminado, la cardinalidad se obtiene a partir del cálculo de las combinaciones únicas totales de dimensiones y nombre de medida. Elegir las etiquetas de protocolo de la línea correctas (equivalentes a las dimensiones de Timestream para LiveAnalytics) le ayuda a indexar automáticamente los datos y a filtrarlos de manera eficiente mediante etiquetas. El script también ofrece la opción de excluir dimensiones específicas al calcular la cardinalidad. Si es aplicable a su caso, es decir, si no usa determinadas dimensiones para filtrar los datos en las consultas SQL (concretamente, si no las usa como predicados), puede excluir estas dimensiones del cálculo de la cardinalidad. Más adelante, podrá incorporarlas como campos (equivalentes a las medidas de Timestream para LiveAnalytics) en los siguientes pasos de la migración.

Requisitos previos e instalación

Consulte la sección de requisitos previos y la instalación en el archivo README del script de cardinalidad.

Uso básico

Para determinar la cardinalidad de una tabla, example_table, en la base de datos example_database, el script se puede usar de la siguiente manera:

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

Esto produce el siguiente resultado:

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

Recomendaciones

El script escanea automáticamente toda la tabla para calcular la cardinalidad y, al mismo tiempo, ofrece opciones de filtro de tiempo para una ejecución óptima de las consultas. Sugerimos implementar filtros de tiempo cuando los datos incluyan dimensiones constantes y cuando el análisis de distintas variaciones dimensionales en toda la tabla arroje resultados similares a los del análisis de intervalos de tiempo específicos. Este enfoque garantiza una ejecución de consultas eficiente y eficaz.

Para obtener más información, consulte el README del script de cardinalidad.