CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
DynamoDB 入门/课时/DynamoDB 是什么
RawBlame
课时目录12 节

DynamoDB 入门

  1. 01DynamoDB 是什么
  2. 02数据模型
  3. 03分区键与排序键
  4. 04CRUD 与条件写
  5. 05GSI 与 LSI
  6. 06Query 与 Scan
  7. 07DynamoDB Streams
  8. 08Spring 集成
  9. 09容量模式
  10. 10时序库对照
  11. 11DynamoDB vs MySQL
  12. 12综合练习

DynamoDB 是什么

托管 NoSQL、Serverless;本站 MySQL 仍为权威。

30 分钟

DynamoDB 是什么

Amazon DynamoDB 是 AWS 托管的 Serverless NoSQL 键值/文档 数据库,按请求计费、自动扩缩容。它与 MySQL 不是替代关系,而是 不同访问模式与运维模型的选型。

学习目标

  • 理解 DynamoDB 与关系库、MongoDB 的定位差异
  • 知道 Serverless 数据层的典型适用场景
  • 明确 CodeRoadMap 仍以 MySQL cf_track 为权威数据源

核心内容

DynamoDB vs 其他数据库

DynamoDBMySQL(sql-essentials)MongoDB(mongodb-essentials)
部署AWS 全托管自建/RDS自建/Atlas
模型Item + PK/SK行 + 表 + JOIN文档 Collection
查询按主键/索引 Query任意 SQLMQL find/aggregate
扩展分区水平扩展垂直/分库分表分片集群
// DynamoDB Item 示例(UserProgress)
{
  "PK": "USER#u_1001",
  "SK": "LESSON#mongo-crud",
  "trackSlug": "mongodb-essentials",
  "action": "complete",
  "updatedAt": "2026-03-01T10:00:00Z"
}

MySQL 中同等数据在 cf_track / cf_lesson / 进度表多表关联;MongoDB 可单文档嵌套,DynamoDB 则靠 PK/SK 设计 表达关系。

适用场景

  • 高并发键值访问:会话、购物车、游戏状态
  • AWS Serverless 栈:Lambda + API Gateway + DynamoDB(见 aws-essentials)
  • 可预测访问模式:已知查询路径,用 GSI 支撑(见 ddb-gsi)

不适合:复杂 ad-hoc 报表、多表 JOIN 分析(postgresql-essentials + SQL 更合适)。

在本站架构里

platform → Spring Boot → MySQL(cf_track、cf_lesson 等权威数据)
                ↓
           DynamoDB(可选,Serverless 实验/高并发进度缓存)

schema.sql 中 cf_track 存课程元数据;本 track 教你 何时、如何 在 AWS 侧引入 DynamoDB,而非替换主库。

练习

  • 在 AWS 控制台搜索 DynamoDB,浏览表列表与 Region 选择
  • 对比上方 Item 与 cf_track 行结构,列出 3 处差异
  • 写一句话:为何课程列表仍用 MySQL 而非 DynamoDB
  • 小结

    DynamoDB = AWS 托管、按访问模式设计的 NoSQL;本站 MySQL 仍是权威数据源。 下一课数据模型:Table、Item、Attribute。

    加载本节练习…
    下一课 →数据模型