要获得与亚马逊 Timestream 类似的功能 LiveAnalytics,可以考虑适用于 InfluxDB 的亚马逊 Timestream。它为实时分析提供了简化的数据摄取和个位数毫秒的查询响应时间。点击此处了解更多。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
迁移验证脚本
验证脚本比较源表(Amazon Timestream 或 Amazon Athena)和 InfluxDB 存储桶度量之间的逻辑 row/point 计数,以及可选的时间范围规范。该工具通过对两个系统运行并行查询并比较结果,帮助确保迁移过程中的数据完整性。
验证脚本支持对 Athena 中导出的数据集或原始 Timestream 数据库/表进行查询。请注意,如果数据是在导出后写入的,则直接查询 Timestream 可能会导致比较不准确。验证脚本可以在摄取开始后随时运行。它首先轮询InfluxDB的指标端点,等待 WAL(Write-Ahead Log)
先决条件和安装
请参阅迁移验证脚本自述文件
用法
python validator.py [options]
所有设置都可以作为 CLI 标志或环境变量提供。请参阅存储库中的示例.env 文件。
有关疑难解答和建议,请参阅迁移验证脚本自述文件
清除
完成迁移后, resources/artifacts 将创建以下内容:
-
一个 Athena 表,包含数据的时间流。 LiveAnalytics 默认情况下,默认 <Timestream database name><Timestream table name>Athena 数据库中为 _。
-
一个 Athena 表,包含转换后的线路协议数据。默认情况下,这是 At <Athena table name>hena 默认数据库中的 lp_。
-
您的 S3 存储桶中的线路协议数据,路径为 <Timestream database name><Timestream table name>//unload-<%y-%m-%d-%h: %M: %S>/。line-protocol-output
-
作为 Timestream LiveAnalytics 导出工具的一部分创建的已卸载数据。
-
已在您的 EC2 实例上下载数据和日志。
-
DynamoDB 表(如果作为导出时间 LiveAnalytics 流工具的一部分用于记录)。
清理 Athena 的资源
要删除任何 Athena 表,请运行以下 CL Amazon I
aws glue delete-table \ --database-name <Athena database name> \ --name <Athena table name>
清理 S3 资源
要删除 S3 存储桶中的线路协议数据,请运行以下 Amazon CLI 命令,<S3 bucket name>替换为 S3 存储桶的名称、<Timestream database name> LiveAnalytics 数据库的时间流名称、<Timestream table name> LiveAnalytics 表的时间流名称以及构成 S3 存储桶中 <timestamp>unload-<%y-%m-%d-%h: %M: %> 路径的时间戳:%M: %> 路径:
aws s3 rm \ s3://<S3 bucket name>/<Timestream database name>/<Timestream table name>/unload-<timestamp>/line-protocol-output \ --recursive
要删除 S3 存储桶,请运行以下命令,<S3 bucket name>替换为 S3 存储桶的名称:
aws s3 delete-bucket --bucket <S3 bucket name>
清理 DynamoDB 资源
要删除 DynamoDB 表,请运行以下命令,<table name>替换为要删除的 DynamoDB 表的名称:
aws dynamodb delete-table --table-name <table name>