学习 DynamoDB

学习 DynamoDB

用正确的方式学习 DynamoDB——从基础、数据建模、索引、表达式、PartiQL、工具到内部原理的结构化课程。

DynamoDB 基础——数据类型、项集合与复合主键。课程其余部分都建立在这些基础机制之上。

已读 0/9测验
何时该用 DynamoDB(以及何时不该)
何时该用 DynamoDB,何时不该。哪些访问模式、规模与成本信号让它优于关系型数据库,以及哪些工作负载并不适合它。
入门阅读约 9 分钟
DynamoDB 数据类型:全部类型及示例
DynamoDB 的十种数据类型——标量(S、N、B、BOOL、NULL)、文档(M、L)和 Set(SS、NS、BS),它们在 DynamoDB-JSON 中的样子,以及哪些可以做键。
入门阅读约 6 分钟
DynamoDB JSON 与 Marshalling
DynamoDB JSON 与 marshalling——为什么每个值都被裹进一个类型标签、这种格式和普通 JSON 有何不同,以及如何在两者之间转换。
入门阅读约 6 分钟
DynamoDB 项大小限制(400 KB)
DynamoDB 400 KB 项大小限制——什么会计入它、属性名和嵌套如何累加,以及如何在建模上规避无界的项增长。
入门阅读约 5 分钟
DynamoDB 基于项的操作
DynamoDB 基于项的操作——GetItem、PutItem、UpdateItem 和 DeleteItem 各自用完整主键定位一个项目,以及它们与 Query 和 Scan 的区别。
入门阅读约 7 分钟
DynamoDB 项集合
什么是 DynamoDB 项集合——所有共享同一个分区键的项——为什么它是高效 Query 读取的单位,以及要留意的那些限制。
入门阅读约 8 分钟
DynamoDB 复合主键:分区键与排序键详解
DynamoDB 复合主键是一个分区键加一个排序键 —— 它把相关的项分到一组,并解锁简单键做不到的范围查询。
入门阅读约 7 分钟
DynamoDB 强一致读取与最终一致读取
DynamoDB 强一致读取与最终一致读取——各自保证什么、ConsistentRead 的 2 倍 RCU 成本,以及为什么 GSI 只支持最终一致。
进阶阅读约 7 分钟
知识检测开始测验
检验你在本节学到的内容。

DynamoDB 数据建模——单表设计、从访问模式出发的建模、type 属性、非规范化,以及何时「一张表」是错误选择。

已读 0/7测验

DynamoDB 关系建模——一对多、多对多、邻接表模式、复合排序键与引用计数,全程无 JOIN。

已读 0/6测验

DynamoDB 查询与排序——Query 与 Scan、分页、过滤表达式、Scan 为何又慢又贵、并行 Scan,以及含零填充的排序键策略。

已读 0/10测验
DynamoDB Query 与 Scan:该用哪个,为什么(含示例)
DynamoDB 中的 Query 与 Scan——Query 只读取一个项目集合并按匹配到的项目计费,而 Scan 会在任何 FilterExpression 生效之前读完整张表。
入门阅读约 7 分钟
DynamoDB 分页:LastEvaluatedKey 详解(含示例)
用 LastEvaluatedKey 和 ExclusiveStartKey 正确地对 DynamoDB 结果分页,为什么 Limit 不是页大小,以及如何向客户端暴露一个无状态游标。
入门阅读约 7 分钟
DynamoDB 筛选策略
DynamoDB 筛选策略对比——分区键、排序键、稀疏索引和 FilterExpression——以及哪一个真正削减你的读取账单。
进阶阅读约 8 分钟
为什么 DynamoDB Scan 又慢又贵
为什么 DynamoDB Scan 又慢又贵,它实际向你计费的是什么,以及如何把一次条件反射式的 Scan 变成成本只有零头的按键 Query。
入门阅读约 6 分钟
DynamoDB 并行扫描
DynamoDB 并行扫描如何用 Segment 和 TotalSegments 把整表读取拆分给多个工作进程,何时有帮助,以及要避开的吞吐量陷阱。
高级阅读约 7 分钟
DynamoDB 排序键策略:3 种模式及适用场景
面向范围读取的 DynamoDB 排序键策略——设计一个字节顺序与读取顺序一致的排序键,让一次 Query 服务多种访问模式。
进阶阅读约 8 分钟
如何按降序查询 DynamoDB
用 ScanIndexForward=false 按降序查询 DynamoDB——最新在前的结果、为什么排序发生在排序键上,以及为什么反向读取不额外收费。
入门阅读约 7 分钟
在会变化的属性上给 DynamoDB 排序
在会变化的属性上给 DynamoDB 排序——为什么键属性不可变、删除后重建的模式,以及改把它放到 GSI 排序键上。
进阶阅读约 7 分钟
DynamoDB 中的补零排序键
为什么在 DynamoDB 的字符串排序键里 "10" 会排在 "2" 前面,以及定宽补零如何让字典序的字节顺序与数值顺序一致。
进阶阅读约 5 分钟
知识检测开始测验
检验你在本节学到的内容。

DynamoDB 全局二级索引(GSI)的真实成本:实测 GSI 写放大、GSI vs LSI vs 过滤表达式决策表,以及绑住你的上限。

已读 0/7测验

DynamoDB 表达式——条件、更新、键条件与投影表达式,以及表达式属性名/值及何时必须使用它们。

已读 0/6测验

DynamoDB 写入与操作——原子计数器、跨属性唯一性、零停机迁移,以及热分区诊断。

已读 0/8测验
DynamoDB 批处理操作
DynamoDB 批处理操作——BatchGetItem 每次调用读 100 个项目、BatchWriteItem 写 25 个、为什么批处理不是事务,以及如何重试剩下的项目。
进阶阅读约 7 分钟
如何在 DynamoDB 中删除多个项
如何在 DynamoDB 中删除多个项——BatchWriteItem、TransactWriteItems、PartiQL 批处理和 TTL——以及为什么不存在 DELETE ... WHERE 语句。
入门阅读约 7 分钟
DynamoDB ReturnValues:拿回旧项或新项
DynamoDB ReturnValues 能在不做第二次读取的情况下,从 PutItem、UpdateItem 或 DeleteItem 拿回旧项或新项——五个选项以及各自何时有用。
进阶阅读约 5 分钟
DynamoDB 原子计数器:ADD 如何工作,以及何时失效
DynamoDB 原子计数器如何配合 ADD 更新表达式工作、它们为何不具幂等性,以及何时应改用条件更新。
进阶阅读约 5 分钟
在 DynamoDB 中对多个属性强制唯一性
如何对多个 DynamoDB 属性强制唯一性约束——邮箱与用户名同时唯一——借助标记项和带条件守卫的 TransactWriteItems。
高级阅读约 6 分钟
不停机的 DynamoDB 迁移
不停机的 DynamoDB 迁移 —— 如何用惰性回填、在线 GSI 和双写,给一张活的表添加一种新实体类型和访问模式。
高级阅读约 6 分钟
DynamoDB 热分区:如何发现与修复
DynamoDB 热分区,是指某一个分区键吸走了不成比例的流量并被限流。这里讲怎么发现它、又如何在设计上把它规避掉。
进阶阅读约 8 分钟
知识检测开始测验
检验你在本节学到的内容。

DynamoDB 上的 PartiQL 与 SQL——PartiQL 是什么、不能做什么,以及 DynoTable Workbench 如何在 DynamoDB 规则内运行 JOIN、GROUP BY 与聚合。

已读 0/7测验

DynamoDB 工具——DynamoDB Local、LocalStack、最佳 GUI 客户端、查看与编辑数据、复制表、CSV 导出与 MCP 服务器。

已读 0/14
如何用 Docker 运行 DynamoDB Local:完整指南
用 Docker 运行 DynamoDB Local 进行离线开发和测试——启动容器,把 SDK 指向本地端点,并创建一张表。
入门阅读约 5 分钟
如何连接到 DynamoDB Local 和 LocalStack
如何将 GUI 连接到 DynamoDB Local 和 LocalStack —— 端点、虚拟凭证、常见错误。用 DynoTable 可视化地浏览和查询本地表。
进阶阅读约 7 分钟
2026 年最佳 DynamoDB GUI 客户端
2026 年 DynamoDB GUI 客户端实测对比 —— NoSQL Workbench、Dynobase、Dynomate、DbVisualizer、DocKit、dynamodb-admin、DynoTable —— 附注明日期、经过核实的价格。
入门阅读约 14 分钟
2026 年值得一读的 DynamoDB 书
2026 年值得花钱的两本 DynamoDB 书:各自多少钱,以及它们出版得太早、究竟漏掉了哪些 DynamoDB 功能。
入门阅读约 6 分钟
如何查看、浏览和编辑 DynamoDB 数据
如何浏览、筛选和编辑 DynamoDB 数据,以及每个动作实际运行的是哪个 API 操作——Scan、Query、GetItem、PutItem、UpdateItem、DeleteItem。
入门阅读约 7 分钟
把 DynamoDB 表复制到另一个账户或区域
把 DynamoDB 表复制到另一个账户或区域——先导出数据,再用 scan 加写入、S3 导出/导入、AWS Backup 或全局表恢复。
入门阅读约 8 分钟
如何把 DynamoDB 表导出为 CSV(4 种方法)
如何把 DynamoDB 表导出为 CSV——DynoTable 中一键的筛选导出、配合 jq 的 AWS CLI 扫描、托管的 S3 导出,或者写个脚本。
入门阅读约 12 分钟
从 DynamoDB 生成 TypeScript 类型
DynamoDB 不存储项目 schema,所以 DescribeTable 给不了你类型。手写一个 interface、用 schema 优先的库,或者从真实项目里推断。
进阶阅读约 6 分钟
如何用 AI(自然语言)查询 DynamoDB
如何用自然语言查询 DynamoDB。API 本身没有自然语言 endpoint,所以来比较一下 LLM 起草的 PartiQL、MCP 智能体和感知 schema 的工具。
入门阅读约 6 分钟
DynamoDB MCP 服务器:Claude Code、Cursor、Codex
通过 MCP 让 AI 智能体实时访问你的 DynamoDB 表——面向 Claude Code、Cursor 和 Codex 的各种选择,以及如何避免把 AWS 密钥交出去。
进阶阅读约 7 分钟
面向 Claude Code 的 DynamoDB MCP
通过 MCP 把 Claude Code 连接到 DynamoDB——确切的 claude mcp add 命令、该用哪个作用域注册,以及如何不让你的 AWS 密钥进入智能体。
进阶阅读约 8 分钟
面向 Cursor 的 DynamoDB MCP
通过 MCP 把 Cursor 连接到 DynamoDB——.cursor/mcp.json 配置、项目级与全局作用域、如何启用服务器,以及如何不让 AWS 密钥进入你的仓库。
进阶阅读约 7 分钟
面向 Codex 的 DynamoDB MCP
通过 MCP 把 OpenAI Codex 连接到 DynamoDB——~/.codex/config.toml 条目、mcp_servers 的 snake_case 陷阱、传输方式的选择,以及启动超时。
进阶阅读约 6 分钟
ExtendDB:在你自己的数据库上运行 DynamoDB API
ExtendDB 是 AWS 开源的适配器,能用你自己运行的数据库(比如 PostgreSQL)提供 DynamoDB API。你的 AWS SDK 无需改动即可继续工作。
进阶阅读约 7 分钟

DynamoDB 运维与成本——事务、Streams、TTL、按需 vs 预置容量、全局表与备份/PITR,在一个运行中的 SaaS 上讲解。

已读 0/11测验
DynamoDB 成本模型:为什么 SQL 会隐藏账单
为什么在 DynamoDB 上用 SQL 会隐藏账单——JOIN、任意的 WHERE 过滤和聚合如何编译成 Scan,以及 Query 对比 Scan 背后的 RCU 计算。
进阶阅读约 4 分钟
DynamoDB Transactions 完整指南(含示例)
使用 TransactWriteItems 的 DynamoDB 事务——最多 100 个全有或全无的动作、4 MB 上限、双倍的写入容量,以及冲突如何导致取消。
高级阅读约 6 分钟
DynamoDB Streams 完整指南(含示例)
DynamoDB Streams —— 24 小时的变更数据捕获日志、四种 StreamViewType 选项、按项有序的记录,以及在项变更时触发 Lambda。
高级阅读约 6 分钟
DynamoDB TTL 完整指南:让数据项自动过期
当一个 Unix 纪元时间戳属性到期后,DynamoDB TTL 会自动删除项目,通常在几天之内,而且这些删除不消耗写入容量。
进阶阅读约 4 分钟
DynamoDB 按需容量 vs 预置容量
DynamoDB 按需容量 vs 预置容量——按请求付费对比预留吞吐量、各自何时更便宜,以及流量形态如何决定选哪种模式。
进阶阅读约 6 分钟
如何设置 DynamoDB 自动扩缩
在预置容量上设置 DynamoDB 自动扩缩——控制台与 CLI 步骤、如何选定目标利用率和最小/最大值,以及那些仍会导致限流的限制。
进阶阅读约 8 分钟
DynamoDB 限流以及如何修复
DynamoDB 为什么会限流——四种有文档记载的成因、每个分区每秒 3,000 读单元和 1,000 写单元的限制,以及各自的修复方法。
进阶阅读约 8 分钟
DynamoDB 表的大小与项数
获取 DynamoDB 表的大小和项数——用免费但最多滞后六小时的 DescribeTable 估算值,或者用 Scan Select COUNT 精确计数。
入门阅读约 5 分钟
DynamoDB Global Tables:多区域复制详解
DynamoDB 全局表——跨区域的双活复制、上次写入者获胜的冲突解决、MREC 与 MRSC 一致性模式,以及 99.999% 的 SLA。
高级阅读约 6 分钟
DynamoDB 备份与时间点恢复(PITR)完整指南
DynamoDB 备份与时间点恢复——按需快照对比连续 PITR、1 到 35 天的窗口,以及恢复带不回来的那些设置。
进阶阅读约 7 分钟
知识检测开始测验
检验你在本节学到的内容。

DynamoDB 内部原理——分区键、自适应容量、GSI 存储、物理分区与请求路由如何工作,并追溯到 Dynamo 论文。

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

更多 DynamoDB 资源

准备好把它付诸实践了吗?

浏览、查询并建模你自己的 DynamoDB 表 — DynoTable 的 SQL Workbench 与 AI 代理在你的 AWS 上运行。30 天免费试用,无需信用卡 — 之后为无时间限制的免费版。