Amazon DynamoDB 全局表
为什么选择 Amazon DynamoDB 全局表?
Amazon DynamoDB 全局表是一个完全托管、无服务器、多区域和多活动的数据库。全局表为您提供 99.999% 的可用性、更高的应用程序弹性和经过改进的业务连续性。由于全局表会在您选择的 AWS 区域中自动复制您的 Amazon DynamoDB 表,使您可以实现快速的本地读写性能。
如果某个区域的应用程序处理中断,无需进行数据库失效转移,因为全局表的多活动架构允许客户读取和写入任何副本表。全局表还消除了在区域之间复制数据和解决多区域工作负载的更新冲突的困难工作。
对于多区域工作负载,您目前可以选择高度一致性新增功能(预览版)或最终一致性。高度一致性允许您构建恢复点目标为零(也称为零 RPO)的应用程序。它还能确保您的应用程序始终读取最新数据。
开始使用全局表非常简单,因为它使用的 DynamoDB API 与单区域表相同。使用全局表不涉及预付费用,也无需签订合同,您仅需为使用的资源付费。您可以使用 AWS 命令行界面(AWS CLI)或 AWS CloudFormation 在 AWS 管理控制台中配置全局表,您也可以通过 Amazon DynamoDB 开发人员指南了解更多信息。有关全局表定价的信息,请参阅按需和预置的 Amazon DynamoDB 定价选项。
工作原理
DynamoDB 全局表由多个副本表组成。每个副本表存在于不同的区域中,但所有副本都具有相同的名称和主键。当数据写入任何副本表时,DynamoDB 会自动将该数据复制到全局表中的所有其他副本表。
例如,假设您的应用程序为分布在三个地理区域(美国东海岸、加拿大和西欧)的庞大客户群提供服务。如果没有全局表,则需要在每个 AWS 区域中创建一个表并编写代码,以在每个区域的每个表中复制数据更改。
使用全局表,您可以在离每个地理区域最近的三个区域创建一个包含副本表的全局表。DynamoDB 会自动将任何副本的更改复制到其他区域的副本。
全局表让应用程序的用户无论身在何处都能以低延迟访问数据。如果某个区域的应用程序处理中断,客户仍可访问其他区域的副本表。
![工作原理](https://d1.awsstatic.com/DynamoDB_Global-Tables-03.73a0216551bf3a8701552ca55ff7fd6d8bc12c84.png)
Amazon DynamoDB 全局表的优势
-
Zoom
当新冠大流行开始时,我们的语音和视频服务出现了巨量需求。在 2020 年初,我们看到来自需要虚拟连接的新老客户的每日会议参与者的使用量前所未有地从 10M 增加到 300M。在后端,我们能够使用 Amazon DynamoDB for Zoom Meetings 管理这种激增。将 DynamoDB 全局表与按需模式结合使用,使我们能够几乎无限地扩展而不会出现性能问题,即使我们的使用量突然激增。
Zoom Video Communications, Inc. 云运维工程经理 Yasin Mohammed -
Disney
Disney+ 使用 Amazon DynamoDB 每天提取内容、元数据和数十亿次用户行为,使得观看者可以将内容添加到自己的观看列表中,开始观看一段视频并用不同的设备接收,以及获取接下来要观看内容的建议。
每天通过 Amazon Kinesis 向 Amazon DynamoDB 注入数十亿个书签。
Attilio Giue,Disney+ 内容发现总监 -
Snap Inc.
通过使用 Amazon DynamoDB,Snap Inc. 显著节省了年度基础设施成本,并且针对多媒体消息应用程序 Snapchat 支持快速、可靠的基础设施。
Amazon DynamoDB 提供的功能及其内部的持续创新让我们有信心继续依赖该工具并在此基础上进行创新。
Saral Jain,Snap Inc 工程总监兼基础设施负责人