【发布时间】:2019-08-28 16:04:50
【问题描述】:
我想创建一个隔离的本地环境(在 linux 上运行)用于开发和测试。
如何将 AWS DynamoDB 中的数据(约 10 个表和约几百条数据)导出到本地 DynamoDB 实例?
【问题讨论】:
标签: amazon-web-services import export amazon-dynamodb
我想创建一个隔离的本地环境(在 linux 上运行)用于开发和测试。
如何将 AWS DynamoDB 中的数据(约 10 个表和约几百条数据)导出到本地 DynamoDB 实例?
【问题讨论】:
标签: amazon-web-services import export amazon-dynamodb
我没试过,但你应该可以使用 CLI。
首先将数据提取到本地JSON文件中
aws dynamodb scan --table-name MYLIVETABLE --output json > pathtofile/MYLIVETABLE.json
然后将该数据加载到您的本地 DynamoDB 实例中
aws dynamodb batch-write-item --table-name MYLOCALTABLE --request-items file://pathtofile/MYLIVETABLE.json --endpoint-url http://localhost:8000
【讨论】:
您可以使用dynamodump。
首先从 AWS 导出到您的本地机器:
python dynamodump.py -m backup -r REGION_NAME -s TABLE_NAME
下一次导入到DynamoDB Local:
python dynamodump.py -m restore -r local -s TABLE_NAME --host localhost --port 8000 --accessKey a --secretKey a
最后验证新的本地表:
aws dynamodb list-tables --endpoint-url http://localhost:8000
重要提示:如果您在 AWS 上预置的读/写容量是 按需,您必须手动更改 ReadCapacityUnits 和 在步骤 1 中保存的 schema.json 文件中写入CapacityUnits 值 从 '0' 到 '1' 以避免出现以下错误:Table read and write 吞吐量必须至少为 1,并且不能为空
【讨论】:
AWS 确实为 dynamoDB 提供本地版本。更多详情如下:https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html
如上所述创建本地副本并将其转移到另一个本地 DynamoDB 实例中..
【讨论】: