我每小时运行一个数据管道,运行HiveCopyActivity从DynamoDB中选择过去一小时的数据到S3。我正在选择的表有一个散列键VisitorID和范围键Timestamp,大约有400万行,大小为7.5GB。为了减少作业所花费的时间,我在Timestamp上创建了一个全局二级索引,但在监视Cloudwatch之后,似乎HiveCopyActivity不使用索引。我已经阅读了所有相关的AWS文档,但找不到任何索引。
有没有办法强制数据管道在这样过滤时使用索引?如果没有,是否有任何替代应用程序可以将每小时(或任何其他时间段)数据从DynamoDB传输到S3?
答案 0 :(得分:0)
不幸的是,DynamoDB EMR Hive适配器目前不支持使用索引。您需要编写自己的清扫程序来扫描索引并将其输出到S3 - 您可以查看https://github.com/awslabs/dynamodb-import-export-tool以了解实现导入/导出管道的一些基础知识。该库本质上是一个用于扫描DDB表的并行扫描框架。