动手实验 | 使用 Amazon DynamoDB 数据库


  实验目标

本实验旨在通过 AWS 管理控制台快速上手 Amazon DynamoDB,掌握其核心功能操作流程。实验将完成以下目标:
创建 DynamoDB 表并配置主键与容量模式;
执行数据的增删改查(CRUD)操作;
验证数据持久化与查询性能;
理解 DynamoDB 作为无服务器数据库的自动化扩展特性。
通过实验,熟悉 DynamoDB 的低门槛操作方式,为后续开发无服务器应用或实时数据处理场景奠定基础。

  功能说明

Amazon DynamoDB 是 AWS 提供的全托管 NoSQL 数据库服务,具有以下关键特性:
无服务器架构:自动扩展存储与吞吐量,无需手动分片或容量规划。
灵活的数据模型:支持键值对与文档类型数据(JSON 格式),主键分为分区键(Partition Key)和可选的排序键(Sort Key)。
两种容量模式:按需模式,按实际请求量付费,适合不可预测的工作负载;预配置模式,提前设定读写容量单位(RCU/WCU),成本可控但需手动调整。
快速查询:通过主键直接访问数据,或使用二级索引(GSI/LSI)实现复杂查询。
内置高可用:数据自动复制到三个可用区,支持跨区域备份与恢复。

  作业步骤

步骤一:创建 DynamoDB 表登录 AWS 控制台,导航至 DynamoDB 服务,点击创建表。
输入表名(如 UserOrders),设置主键:
分区键:UserID(字符串类型,用于数据分区)。
排序键(可选):OrderDate(数字类型,用于同一用户下的订单排序)。
容量模式选择按需,无需设置 RCU/WCU。
取消勾选使用默认设置,在加密中选择 AWS KMS(可选),点击创建表。

步骤二:插入测试数据表创建完成后,进入浏览项目选项卡,点击创建项目。
输入主键值(如 UserID: "U1001", OrderDate: 20240101),补充其他属性(如 Product: "Laptop", Quantity: 1),点击保存。
重复操作插入 3-5 条不同用户或日期的订单数据。

步骤三:查询与更新数据主键查询:在浏览项目中输入主键值,直接获取单条记录。
扫描表:使用扫描操作查看所有数据(注意:生产环境慎用,可能产生高额读取费用)。
更新数据:选择某条记录,点击操作 > 更新项目,修改属性(如将 Quantity 改为 2)。
删除数据:选择记录后点击操作 > 删除项目。

步骤四:创建全局二级索引(GSI)
进入表的索引选项卡,点击创建全局索引。
设置索引名(如 ByProduct),主键为 Product(分区键)和 OrderDate(排序键)。
容量模式沿用按需,点击创建索引。
索引创建完成后,通过查询操作测试按产品筛选订单(如输入 Product: "Laptop")。

  结果验证

1. 数据持久化检查刷新表页面,确认插入、更新的数据未丢失,删除的记录不再显示。
在监控选项卡中查看 ConsumedReadCapacityUnits 和 ConsumedWriteCapacityUnits,确认按需模式按实际请求计费。
2. 查询性能验证主键查询应在毫秒级返回结果,扫描表可能因数据量增大而变慢。
使用 GSI 查询非主键字段(如 Product),验证索引是否生效。
3. 自动化扩展验证模拟高并发写入:通过控制台连续插入 100 条记录,观察监控中的写入容量是否自动扩展,无报错或限流。
通过以上步骤,验证 DynamoDB 的易用性与弹性能力,适用于需要快速迭代且无运维负担的数据库场景。