我想创建一个隔离的本地环境(在linux上运行)以进行开发和测试。
如何从AWS DynamoDB ind导出到本地DynamoDB实例的数据(约10个表和几百个数据项)?
答案 0 :(得分:1)
我还没有尝试过,但是您应该可以使用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
答案 1 :(得分:0)
AWS确实为dynamoDB提供了本地版本。以下是更多详细信息:https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html
如上所述创建本地副本,并将其传输到另一个本地DynamoDB实例中。.
答案 2 :(得分:0)
您可以使用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文件中的WriteCapacityUnits值 从'0'到'1'以避免出现以下错误:读取和写入表 吞吐量必须至少为1,并且不能为空