https://docs.aws.amazon.com/zh_cn/amazondynamodb/latest/developerguide/Limits.html
容量单位大小(对于预置表)
一个读取容量单位 = 对大小为 4 KB 的项目每秒执行一次强一致性读取,或每秒执行两次最终一致性读取。
一个写入容量单位 = 对大小为 1 KB 的项目每秒执行一次写入。
事务读取请求需要 2 个读取容量单位才能对大小最多为 4 KB 的项目每秒执行一次读取。
事务写入请求需要 2 个写入容量单位才能对大小最多为 1 KB 的项目每秒执行一次写入。
请求单位大小(对于按需表)
一个读取请求单位 = 对大小最多为 4 KB 的项目执行一次强一致性读取,或执行两次最终一致性读取。
一个写入请求单位 = 对大小最多为 1 KB 的项目执行一次写入。
事务读取请求需要 2 个读取请求单位才能对大小最多为 4 KB 的项目执行一次读取。
事务写入请求需要 2 个写入请求单位才能对大小最多为 1 KB 的项目执行一次写入。
每个账户中表的数量
对于任何 AWS 账户,每个 AWS 区域的初始限制为 256 个表。
要请求提高服务限制,请参阅 https://aws.amazon.com/support。
每个表的二级索引
您最多可以定义 5 个本地二级索引。
每张表的初始限制为 20 个全局二级索引。要请求提高服务限制,请参阅 https://aws.amazon.com/support。
字符串
字符串的长度会受到 400 KB 这一项目大小上限的限制。
项目大小
DynamoDB 中的项目大小上限为 400 KB,包括属性名称二进制长度(UTF-8 长度)和属性值长度(同为二进制长度)。属性名称也包含在此大小限制之内。
嵌套属性深度
DynamoDB 支持高达 32 级深度的嵌套属性。
DynamoDB 事务
DynamoDB 事务 API 操作具有以下约束:
-
一个事务不能包含超过 25 个唯一项目。
-
一个事务不能包含超过 4 MB 数据。
-
不能对同一个表中的同一个项目执行事务中的两个操作。例如,您不能在一个事务中对同一个项目同时执行
ConditionCheck
和Update
。 -
事务无法对超过一个 AWS 账户或区域中的表执行操作。
-
默认情况下对全局表禁用事务。如果您要对全局表使用事务,请咨询客户代表或联系 Amazon Support。
DynamoDB Accelerator (DAX)
DAX 集群由刚好 1 个主节点和 0 到 9 个只读副本节点组成。一个 AWS 区域中的节点总数(每个 AWS 账户)不能超过 50 个。
参数组
您最多可以为每个区域创建 20 个 DAX 参数组。
子网组
您最多可以为每个区域创建 50 个 DAX 子网组。
DAX 是一项与 DynamoDB 兼容的缓存服务,可让您受益于针对要求苛刻的应用程序的极高内存中性能。DAX 可处理三个核心方案:
-
作为内存中的缓存,DAX 将最终一致性读取工作量的响应时间缩短了一个数量级 - 从毫秒级缩短到了微秒级。
-
DAX 通过提供与 Amazon DynamoDB 在 API 上兼容的托管服务降低了运营和应用复杂性,并因此只需要进行最少的功能性更改就能与现有应用程序一起使用。
-
对于读取量大或突发式的工作负载,DAX 通过降低过度预置读取容量单位来增加吞吐量和潜在运营成本节省。对于需要针对各个密钥进行重复读取的应用,这尤其有用。
DAX 支持服务器端加密。利用静态加密,将加密 DAX 保存在磁盘上的数据。在将主节点中的更改传播至只读副本时,DAX 将数据写入磁盘。
DAX 不 适用于:
-
需要强一致性读取 (或无法容忍最终一致性读取) 的应用程序。
-
不需要读取的微秒响应时间的应用程序,或不需要分载基础表中的重复读取活动的应用程序。
-
需要进行大量写入或不执行太多读取活动的应用程序。
-
已在将其他缓存解决方案用于 DynamoDB 并将其自己的客户端逻辑用于使用该缓存解决方案的应用程序。