lambda 函数查询另一个区域中存在的 DynamoDB?

lambda function to query DynamoDB present in another region?

我想知道我们是否可以在一个区域(例如 us-east-1)中编写一个 lambda 函数来查询另一个区域中存在的 DynamoDB 数据库。

感觉是有规定的。 只是想知道语法是如何实现这一点的。

dynamo_client = boto3.resource('dynamodb')
dynamo_table = dynamo_client.Table('table')

以上是同一地区dynamodb连接的正常例子

想知道当我们想从另一个区域访问 dynamodb 时语法会怎样。

谢谢

是的,你可以。 resource 采用 region_name 参数:

dynamo_client = boto3.resource('dynamodb', region_name='<your-other-regio>')
dynamo_table = dynamo_client.Table('table')

是的,你可以。在您的 Lambda 代码中 - 您仍然可以为 DynamoDB 服务客户端设置区域。考虑这个 Java 示例:

// Create a DynamoDbClient object
 Region region = Region.US_WEST_2;
 DynamoDbClient ddb = DynamoDbClient.builder()
            .region(region)
            .build();

现在您可以与位于 US-WEST_2 区域的 DynamoDB table 交互。