内部原理

你可以在不了解底层原理的情况下使用 DynamoDB——直到某个热分区把你限流、某个 GSI 出现滞后,或自适应容量做出某件你解释不了的事。这一节就是那套让上述行为变得可预测、而非神秘莫测的心智模型。

它是整套课程的深水区:键如何映射到物理分区、存储和路由到底如何工作,以及今天的行为在历史上从何而来。请在你对建模和索引已经驾轻就熟之后再读它——它讲的是前面各节交给你的那些规则背后的_为什么_。

已读 0/8测验
DynamoDB 分区键如何工作
DynamoDB 分区键如何工作——把键映射到物理分区的哈希、为什么你的键选择决定吞吐,以及如何避开热分区。
进阶阅读约 7 分钟
DynamoDB 自适应容量
DynamoDB 自适应容量与突增容量——它们如何自动吸收尖峰、为热分区增能,以及两者都突破不了的分区上限。
高级阅读约 6 分钟
一个 DynamoDB GSI 在内部是如何存储的
一个 DynamoDB GSI 是如何存储的——它自己的分区空间、来自基表的异步复制、只有被投影的属性,以及隔离的容量。
高级阅读约 7 分钟
DynamoDB 物理分区
DynamoDB 物理分区如何运作——10 GB、3000 RCU 和 1000 WCU 的上限,分区如何分裂,以及为什么一个热键会在还有富余容量时限流。
高级阅读约 7 分钟
DynamoDB 的存储内部机制是如何工作的
DynamoDB 的存储内部机制是如何工作的 —— 分区哈希、用于排序键范围的每分区 B 树,以及跨三个可用区的法定多数复制,逐一讲解。
高级阅读约 7 分钟
DynamoDB 的请求路由是如何工作的
DynamoDB 的请求路由是如何工作的 —— 请求路由器对分区键做哈希以定位到正确的存储节点,以及这为何能修复按键的延迟问题。
高级阅读约 7 分钟
从 Dynamo 论文到 DynamoDB
从 2007 年的 Amazon Dynamo 论文到 DynamoDB —— 最初的一致性哈希、法定人数设计引入了什么,以及 AWS 保留了什么、又悄悄替换了什么。
高级阅读约 6 分钟
知识检测开始测验
检验你在本节学到的内容。

试用 DynoTable 来探索你的键和项集合是如何布局的——在 SQL Workbench 里对一个分区键做 GROUP BY,看看哪些键承载了最多的项。