我需要为我的 DynamoDb 表配置跨区域复制。为了手动尝试,我只使用了 AWS Web 控制台,在其中我为 Global Table 配置了适当的区域,以便通过 DynamoDb 流进行复制,这非常简单。有人可以建议我如何使用 Java SDK 做到这一点吗?
1 回答
请记住,DyanmoDB 现在支持2017 年 11 月 29 日宣布的全局表。因此,您可能可以将大量区域表替换为全局表。
全局表消除了在区域之间复制数据和解决更新冲突的艰巨工作,使您能够专注于应用程序的业务逻辑。此外,全局表使您的应用程序即使在不太可能发生的整个区域隔离或降级的情况下也能保持高可用性。
但是,要直接回答您的问题,它不是 AWS DynamoDB Java SDK 的一部分。您必须使用 AWS 实验室的 dynamodb-cross-region-library。
跨区域复制
重要的
AWS 之前提供了基于 AWS CloudFormation 的跨区域复制解决方案。此解决方案现已弃用,取而代之的是开源命令行工具。有关详细信息,请参阅上的详细说明
GitHub:
https://github.com/awslabs/dynamodb-cross-region-library/blob/master/README.md
DynamoDB 跨区域复制解决方案使用 Amazon DynamoDB 跨区域复制库。该库使用 DynamoDB Streams 使 DynamoDB 表在多个区域中近乎实时地保持同步。当您写入一个区域中的 DynamoDB 表时,跨区域复制库会自动将这些更改传播到其他区域中的表。
您可以在自己的应用程序中利用跨区域复制库,使用 DynamoDB Streams 构建您自己的复制解决方案。如需更多信息和下载源代码,请访问以下 GitHub 存储库: