我在dynamodb中有一个大小为15gb的表。现在我需要将一些基于时间戳(以db为单位)的数据传输到另一个dynamodb。这里最有效的选择是什么?
a) 转到s3,用pandas或其他方法处理,然后放到另一个表中(数据量很大,我觉得这可能需要很长时间)
b) 通过数据管道(读了很多,但不认为我们可以把查询放在那里)
c) 通过emr和hive(这似乎是最好的选择,但是否可以通过python脚本完成所有操作?我需要创建一个emr集群并使用它还是每次都创建并终止它?电子病历如何高效、廉价地使用?)
1条答案
按热度按时间klsxnrf11#
我建议将数据管道引入s3方法。然后有一个脚本从s3读取并处理您的记录。您可以将其计划为定期运行以备份所有数据。我不认为任何进行全扫描的解决方案都能提供更快的方法,因为它总是受到读吞吐量的限制。
另一种可能的方法是使用dynamodb流和lambdas实时维护第二个表。不过,您首先需要使用上述方法处理现有的15gb,然后切换到lambdas以保持它们的同步