从2025年6月20日起,亚马逊Timestream版 LiveAnalytics 将不再向新客户开放。如果您想使用亚马逊 Timestream LiveAnalytics,请在该日期之前注册。现有客户可以继续照常使用该服务。有关更多信息,请参阅 Amazon Timestream 以了解 LiveAnalytics 可用性变更。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将时间流数据导出到 Amazon S3
无论迁移的目标服务是什么,我们都建议您遵循以下最佳实践,将 LiveAnalytics 数据的 Timestream 导出到 Amazon S3,创建一个耐用的中间存储层,作为后续数据库特定摄取的基础。
为了可靠地将 LiveAnalytics 表的 Timestream 数据导出到 Amazon S3,我们建议使用 Timestream LiveAnalytics 导出工具,该工具
LiveAnalytics 导出工具的时间流
基于时间的分块策略
迁移大量时间序列数据时,基于时间的分块是必不可少的。这种方法将导出过程分解为可管理的单元,这些单元可以独立处理并在失败时重试,从而大大降低了迁移风险。它创建了检查点,便于跟踪进度,并增加了中断后恢复的功能。对于需要持续摄取数据的组织来说,这允许在单独的时间段中导出较新的数据,从而可以更好地协调正在进行的操作和迁移。该工具使用基于日期的分块,使用 S3 存储桶前缀存储每天的数据,以实现高效管理。此外,可以根据小时、日、月或年进行分块。
监控迁移
该工具提供了一个选项,用于在 DynamoDB 表中捕获迁移统计信息,跟踪诸如使用的配置、导出的记录和其他数据点之类的指标,以验证迁移的完整性。我们建议您在迁移和验证期间密切监控这些指标。您还可以使用编排脚本中提供的日志记录,捕获执行时间戳、区块边界以及遇到的任何错误情况。如果您想集成下游系统以对故障采取措施,该工具还会提供 SNS 通知。
建议和最佳实践
Timestream LiveAnalytics for export 工具为将数据导出到 S3 提供了灵活而强大的解决方案,可根据您的目标系统要求量身定制各种配置选项。如果您的目标是 InfluxDB 的 Timestream,请使用不压缩的 Par q
该工具利用 Timestream f LiveAnalytics or UNLOAD 功能,同时根据您指定的时间范围自动批量导出数据,从而克服其分区查询限制。您可以按小时、日、月或年自定义数据分区,默认设置为日。每个分区必须保持在大约 350 GB 以下,以避免出现与内存相关的错误,例如查询计算超过最大可用内存。例如,如果您的年度数据超过 350 GB,请考虑使用月度分区或更精细的选项,例如每日或每小时分区。如果您选择每小时一次,但仍然出现 “查询计算超过最大可用内存” 错误,则可以减少分区数量
该工具为导出范围提供了灵活性,允许您导出账户中的单个表、整个数据库或所有数据库。对于更专业的要求,例如导出多个特定的数据库,您可以围绕此自动化构建自定义包装。此外,您可以通过启用反向时间顺序选项来选择先导出最新的数据。失败后重新启动时,您可以继续使用相同的迁移标签将所有文件保留在相同的 S3 前缀下,也可以省略该标签以使用新前缀创建文件。由于该工具会分批导出数据,因此如果您遇到故障,我们建议您从失败的批次开始,而不是从最初的开始时间重新启动。如果您未指定结束时间戳,则该工具会自动使用当前时间戳 (UTC) 来确保一致的导出和验证。
基本命令
例 : 导出启用了 DynamoDB 日志记录的表
python3.9 unload.py \ --export-table \ --database Demo \ --table Demo \ --start-time '2020-03-26 17:24:38' \ --enable-dynamodb_logger true
例 : 导出整个数据库
python3.9 unload.py \ --export-database \ --database Demo \ --start-time '2020-03-26 17:24:38'
例 : 导出所有数据库
python3.9 unload.py \ --export-all_databases \ --start-time '2020-03-26 17:24:38'
例 : 具有更多选项的高级导出
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
有关更多信息,请参阅卸载脚本的自述文件