本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
第 5 步。创建 DynamoDB 数据模型
目标
-
创建 DynamoDB 数据模型。
流程
-
数据库工程师确定每个用例需要多少张表。我们建议在 DynamoDB 应用程序中保留尽可能少的表。
-
根据最常见的访问模式,确定可以是两种类型之一的主键:带有标识数据的分区键的主键,或带有分区键和排序键的主键。排序键是用于分组和组织数据的辅助索引,因此可以在分区内高效地对其进行查询。您可以利用排序键,在数据中定义层级关系,在任何层级查询(请参阅博客帖子
)。 -
分区键设计
-
定义分区键并评估其分布。
-
确定是否需要进行写入分片均匀分配工作负载。
-
-
排序键设计
-
确定排序键。
-
确定是否需要复合排序键。
-
确定版本控制的需求。
-
-
-
根据访问模式,确定二级索引以满足查询要求。
-
数据库工程师决定数据是否包含大型项目。如果是,他们通过使用压缩方法或在 Amazon Simple Storage Service (Amazon S3) 存储数据,设计解决方案。
-
数据库工程师决定是否需要时间序列数据。如果是,他们将使用时间序列设计模式对数据进行建模。
-
数据库工程师确定 ER 模型是否包含 many-to-many关系。如果是,他们将使用相邻列表设计模式对数据进行建模。
工具和资源
-
适用@@ 于 Amazon DynamoDB 的 NoSQL Workbench — 提供数据建模、数据可视化以及查询开发和测试功能,帮助您设计 Dyn amoDB 数据库
-
选择正确的 DynamoDB 分区键
(AWS 数据库博客) -
如何设计 Amazon DynamoDB 全球二级索引
(AWS 数据库博客)
RACI
业务用户 | 业务分析师 | 解决方案架构师 | 数据库工程师 | 应用程序开发者 | DevOps 工程师 |
---|---|---|---|---|---|
我 |
我 |
我 |
R/A |
输出
-
满足您的访问模式和要求的 DynamoDB 表架构
示例
以下屏幕截图显示了 NoSQL 工作台。