DynamoDB 里能有多少张表?
默认每个区域 2,500 张。每个 AWS 账户在每个区域起步的配额是 2,500 张 DynamoDB 表,申请后 AWS 可以把它提到最多 10,000 张。单张表的大小不受限制——而超过 10,000 张之后,AWS 建议把工作负载分散到多个账户上。
表配额
初始配额是每个 AWS 账户每个区域 2,500 张表。如果你需要更多,AWS 的指引是联系你的客户团队,提升上限至 10,000 张;再往上,推荐做法是使用多个账户,每个账户最多服务 10,000 张表。
表本身是无限的
单张表的大小没有实际限制——表在项目数量和字节数上都不受约束。硬性的单项目上限是 400 KB,而每张表最多支持 20 个全局二级索引(默认配额)和 5 个本地二级索引。
早在配额之前挡住你的是什么
几乎没有人会真的用到 2,500 张表。先咬人的是:一张预置容量的表永远不是免费的,哪怕根本没人碰它。AWS 把任何表或 GSI 的最小值定为 1 个读容量单元和 1 个写容量单元,而这是按小时计费的,无论有没有一个请求到来。
按 us-east-1 的费率,每 RCU 小时 0.00013 美元、每 WCU 小时 0.00065 美元,乘以 730 小时,一张空的最小容量表每月要 0.5694 美元:
| 处于最小容量的表数量 | 一个请求都没有时的月度成本 |
|---|---|
| 100 | $56.94 |
| 2,500(默认配额) | $1,423.50 |
| 10,000(提升后的上限) | $5,694.00 |
数字出自我们的定价计算器,它跑在同步过来的 AWS 定价表上,且未计入任何免费套餐额度。
按需模式的表没有这样的底线。一张闲置的按需表只按存储计费,正是这一点让高表数量变得可以承受。如果你的设计确实想要几百张表,那么容量模式的选择比配额更重要。
你真的需要很多表吗?
在 DynamoDB 里,表数量是一个设计选择,不是一根增长轴。单表设计有意把相关实体放在一张表里,而大多数应用需要的表远少于它们原来的关系型模式——常常是每个服务一张。
深入了解
在把实体拆到多张表之前先读一读单表设计,用项目大小计算器检查项目大小,并下载 DynoTable 来纵览你所有配置文件和区域里的每一张表。
参考资料
- Quotas in Amazon DynamoDB — Amazon DynamoDB Developer Guide
- Core components of Amazon DynamoDB — Amazon DynamoDB Developer Guide
- Local secondary indexes — Amazon DynamoDB Developer Guide
最后核实于 2026-07-13,依据上方链接的 AWS 官方文档;本页每一项配额均于 2026-07-28 重新核对。
成本依据我们同步的 AWS 定价表中 us-east-1 预置容量费率计算,采用计算器所用的 730 小时月。