Exportación de datos de Timestream a Amazon S3 - Amazon Timestream

Amazon Timestream LiveAnalytics for dejará de estar abierto a nuevos clientes a partir del 20 de junio de 2025. Si quieres usar Amazon Timestream LiveAnalytics, regístrate antes de esa fecha. Los clientes actuales pueden seguir utilizando el servicio con normalidad. Para obtener más información, consulta Amazon Timestream LiveAnalytics para ver los cambios de disponibilidad.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Exportación de datos de Timestream a Amazon S3

Independientemente del servicio de destino de la migración, le recomendamos seguir las siguientes prácticas recomendadas para exportar su flujo temporal de LiveAnalytics datos a Amazon S3, creando una capa de almacenamiento intermedia duradera que sirva de base para la posterior ingesta específica de bases de datos.

Para exportar datos de forma fiable desde Timestream para LiveAnalytics tablas a Amazon S3, recomendamos utilizar la herramienta Timestream for LiveAnalytics Export, que utiliza la función Timestream UNLOAD, diseñada para exportaciones de datos a gran escala.

Timestream para la herramienta de exportación LiveAnalytics

Estrategia de fragmentación basada en el tiempo

La fragmentación basada en el tiempo es esencial a la hora de migrar grandes volúmenes de datos de series temporales. Este enfoque divide el proceso de exportación en unidades gestionables que pueden procesarse de forma independiente y volver a probarse en caso de fallo, lo que reduce considerablemente los riesgos de migración. Crea puntos de control para facilitar el seguimiento del progreso y añade la posibilidad de reanudarlo después de las interrupciones. En el caso de las organizaciones con una ingesta continua de datos, esto permite exportar los datos más recientes en intervalos de tiempo separados, lo que permite una mejor coordinación entre las operaciones en curso y la migración. La herramienta utiliza la fragmentación por días y almacena los datos de cada día con el prefijo de bucket S3 para una gestión eficiente. Además, la fragmentación se puede basar en horas, días, meses o años.

Supervisión de la migración

La herramienta ofrece una opción para capturar las estadísticas de migración en una tabla de DynamoDB, rastreando métricas como las configuraciones utilizadas, los registros exportados y otros puntos de datos para validar la integridad de la migración. Le recomendamos que supervise detenidamente estas métricas durante la migración y la validación. También puedes usar el registro incluido en el script de orquestación para capturar las marcas de tiempo de ejecución, los límites de los fragmentos y cualquier condición de error que se encuentre. La herramienta también proporciona notificaciones de SNS si deseas integrar tu sistema descendente para tomar medidas en caso de fallo.

Recomendaciones y mejores prácticas

La herramienta Timestream for LiveAnalytics Export proporciona una solución flexible y sólida para exportar datos a S3 con varias opciones de configuración adaptadas a los requisitos del sistema de destino. Si su objetivo es Timestream para InfluxDB, utilice el formato Parquet sin compresión para garantizar la compatibilidad con los scripts de ingestión. Para un seguimiento y una supervisión óptimos, habilite el registro de DynamoDB y configure las notificaciones de SNS para recibir alertas sobre la finalización o los errores de exportación.

La herramienta aprovecha la función Timestream for LiveAnalytics UNLOAD y, al mismo tiempo, supera las limitaciones de las consultas al exportar automáticamente los datos en lotes en función del intervalo de tiempo especificado. Puede personalizar la partición de datos por hora, día, mes o año, siendo el día el valor predeterminado. Cada partición debe tener un tamaño inferior a aproximadamente 350 GB para evitar errores relacionados con la memoria, como que el cálculo de consultas supere la memoria máxima disponible. Por ejemplo, si sus datos anuales superan los 350 GB, considere la posibilidad de utilizar particiones mensuales o incluso opciones más detalladas, como la partición diaria o por hora. Si eliges cada hora y sigue apareciendo el error «El cálculo de la consulta supera el máximo de memoria disponible», puedes reducir el número de particiones y asegurarte de que las exportaciones se realizan correctamente.

La herramienta ofrece flexibilidad en el ámbito de la exportación, ya que le permite exportar una sola tabla, una base de datos completa o todas las bases de datos de su cuenta. Para requisitos más especializados, como la exportación de varias bases de datos específicas, puede crear un contenedor personalizado en torno a esta automatización. Además, puede optar por exportar primero los datos más recientes activando la opción de orden cronológico inverso. Al reiniciar después de un error, puede continuar con la misma etiqueta de migración para mantener todos los archivos con el mismo prefijo S3 u omitir la etiqueta para crear archivos con un prefijo nuevo. Como la herramienta exporta los datos por lotes, si encuentra errores, le recomendamos que comience desde el lote fallido en lugar de reiniciarlo desde la hora de inicio original. Si no especificas una marca de tiempo de finalización, la herramienta utilizará automáticamente la marca de tiempo actual (UTC) para garantizar una exportación y una validación coherentes.

Comandos básicos

ejemplo : Exportar una tabla con el registro de DynamoDB activado
python3.9 unload.py \ --export-table \ --database Demo \ --table Demo \ --start-time '2020-03-26 17:24:38' \ --enable-dynamodb_logger true
ejemplo : Exporta toda la base de datos
python3.9 unload.py \ --export-database \ --database Demo \ --start-time '2020-03-26 17:24:38'
ejemplo : Exportar todas las bases de datos
python3.9 unload.py \ --export-all_databases \ --start-time '2020-03-26 17:24:38'
ejemplo : Exportación avanzada con más opciones
python unload.py \ --export-table \ --database MyDB \ --table MyTable \ --start-time '2024-05-14 00:00:00' \ --end-time '2025-05-14 00:00:00' \ --partition month \ --export-format PARQUET \ --compression GZIP \ --region us-east-1 \ --s3-uri s3://my-bucket \ --enable-dynamodb_logger \ --sns-topic_arn arn:aws:sns:region:account-id:topic-name

Para obtener más información, consulta el README del script de descarga.