【发布时间】:2021-05-18 20:17:24
【问题描述】:
我的意思是,这些表是在 2020 年每天创建的,我想将它们保存到 S3 并从 DynamoDB 中删除。我遇到了一些可以实现它的方法,我想知道哪种方法在我的情况下可以有效地工作。
注意:这些表的大小约为 1GB,大约有 1,00,000 多个项目。
- 导出到 DynamoDB 提供的 S3 功能。如何从 Python 脚本实现它。使用什么 boto3 Api?
- Kinesis Data Stream 可以工作吗?因为桌子上不会发生现场活动。我们可以将现有表推送到流媒体吗?并使用 Amazon Firehose 将其导出。
- 使用 Amazon Elastic Map Reduce 导出到 S3。
请分享您对这些的看法,并提及任何其他方式(如果有)。谢谢!感谢您的时间。
更新:我使用了 Export to S3,但它将表保存在四个不同的 json 文件中。需要时将其从 S3 导入回 DynamoDB 是否容易?
【问题讨论】:
-
有什么理由让你在 S3 中使用它吗?
-
其实为了继续使用 DynamoDB 表限制,我想删除旧表。但在此之前需要备份。因此将其保存到 S3 存储桶中。有没有其他办法?
-
为什么不直接使用 DynamoDB 备份?您可以备份该表,然后将其删除。如果您再次需要它,您可以从备份中恢复。
-
如果源表被删除,会不会被删除?如果没有,那么我们可以进行多少备份是否有任何限制。因为重点不是扩展提供的表限制。
-
删除表时不会被删除。事实上,如果您在控制台中删除一个表,它会询问您是否要先创建备份。我认为备份没有限制,但 DynamoDB 的大多数限制都是软限制,因此您可以请求增加。
标签: amazon-s3 amazon-dynamodb amazon-emr amazon-kinesis