DynamoDB全局表复制系统

时间:2019-02-02 14:02:38

标签: amazon-web-services amazon-dynamodb replication amazon-dynamodb-global-tables

作为大学项目的一部分,我正在对Dynamodb的性能进行基准测试,并在设置Global表时一直在寻找有关复制系统的更多详细信息,因为我想了解它对延迟/吞吐量的影响。 最后,我找到了两个令人困惑的概念,区域和可用性区域。根据我的理解: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Streams.CrossRegionRepl.html 通过创建2个表,一个表在法兰克福,一个表在爱尔兰,这意味着我现在有了 2个多主机读/写副本。

但是后来我找到了那些链接: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.Partitions.html https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html https://aws.amazon.com/blogs/aws/new-for-amazon-dynamodb-global-tables-and-on-demand-backup/

说明数据已存储并在AWS区域中的多个可用区之间自动复制,但未提及副本的数量以及副本是否可用于读/写请求,并且还是多主副本或从属副本或仅用于恢复目的。 从我在这里的理解,如果回到我正在使用的示例(法兰克福/爱尔兰), 我将拥有: 3个多主机读/写副本在法兰克福 3个爱尔兰多主机读/写副本

请让我知道哪个是正确的。在此先感谢

1 个答案:

答案 0 :(得分:3)

默认情况下,Dyanmodb会将数据放入多个可用性区域中的表,而不管它是否是全局表。这是为了确保在一个区域出现故障的情况下具有更高的可用性。但是,这些分区对用户是透明的,用户无法选择要连接的分区。 这是一个不错的video,解释了它是如何在后台运行的。

全局表意味着将对用户透明地跨区域复制数据。我在俄勒冈和俄亥俄州两个地区的表上进行了基准测试,通常需要约1.5秒。复制。复制解决方案由AWS自动管理,最后一次写入胜出。

这里的个人建议是仅使用一个表进行写入,以便可以最大程度地减少数据冲突。并且在灾难故障转移的情况下会写入其他区域。

相关问题