Akh*_*l N 16 copy amazon-dynamodb
我想将所有dynamoDB表复制到另一个没有s3的aws帐户来保存数据.我看到了使用数据管道复制表的解决方案,但所有都使用s3来保存数据.我想跳过s3步骤,因为该表包含大量数据,因此s3写入和s3读取过程可能需要一些时间.所以我需要直接将表从一个帐户复制到另一个帐户.
Ada*_*zyk 28
如果你不介意使用Python,并添加boto3库(sudo python -m pip install boto3),那么我会这样做(我假设你知道如何分别填写代码中的键,区域和表名) :
import boto3
import os
dynamoclient = boto3.client('dynamodb', region_name='eu-west-1',
aws_access_key_id='ACCESS_KEY_SOURCE',
aws_secret_access_key='SECRET_KEY_SOURCE')
dynamotargetclient = boto3.client('dynamodb', region_name='us-west-1',
aws_access_key_id='ACCESS_KEY_TARGET',
aws_secret_access_key='SECRET_KEY_TARGET')
dynamopaginator = dynamoclient.get_paginator('scan')
tabname='SOURCE_TABLE_NAME'
targettabname='TARGET_TABLE_NAME'
dynamoresponse = dynamopaginator.paginate(
TableName=tabname,
Select='ALL_ATTRIBUTES',
ReturnConsumedCapacity='NONE',
ConsistentRead=True
)
for page in dynamoresponse:
for item in page['Items']:
dynamotargetclient.put_item(
TableName=targettabname,
Item=item
)
Run Code Online (Sandbox Code Playgroud)
使用boto对Amazon DynamoDB进行简单备份和还原
https://github.com/bchew/dynamodump
可以执行以下操作: