

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 第 3 步。识别数据访问模式
<a name="step3"></a>

访问模式或查询模式定义了用户和系统如何访问数据以满足业务需求。

## 目标
<a name="obj3"></a>
+ 记录数据访问模式。

## 流程
<a name="proc3"></a>
+ 数据库工程师和业务分析师会见最终用户，以确定如何使用数据访问模式矩阵模板查询数据。
  + 对于新应用程序，他们查看有关活动和目标的用户案例。他们记录用例并分析用例所需的访问模式。
  + 对于现有应用程序，他们分析查询日志以了解人们目前使用该系统的方式，以及确认键访问模式。
+ 数据库工程师确定了访问模式的以下属性：
  + 数据大小：了解一次存储和请求的数据量将有助于确定对数据进行分区的最有效方法（请参阅[博客帖子](https://aws.amazon.com/blogs/database/choosing-the-right-dynamodb-partition-key/)）。
  + 数据形状：NoSQL 数据库处理查询时不会改变数据形状（RDBMS 系统会这样做），而是整理数据，使数据库中的数据形状与查询内容对应。这是加快速度并增强可扩展性的一个关键因素。
  + 数据速度：DynamoDB 通过增加可用于处理查询的物理分区数量，并在这些分区高效分布数据来进行扩展。提前了解查询负载峰值可能有助于确定如何对数据进行分区以获得最佳利用 I/O 容量。
+ 企业用户对访问或查询模式进行优先排序。
  + 优先级查询通常是最常用或最相关的查询。识别需要较低响应延迟的查询也很重要。

## 工具和资源
<a name="tools3"></a>
+ 访问模式矩阵（请参阅[模板](template-access-patterns.md)）
+ [选择正确的 DynamoDB 分区](https://aws.amazon.com/blogs/database/choosing-the-right-dynamodb-partition-key/)键AWS （数据库博客）
+ [适用于 DynamoDB 的 NoSQL 设计](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-general-nosql-design.html)（DynamoDB 文档）

## RACI
<a name="raci3"></a>


****  

| 业务用户 | 业务分析师 | 解决方案架构师 | 数据库工程师 | 应用程序开发者 | DevOps 工程师 | 
| --- | --- | --- | --- | --- | --- | 
| C | A | 我 | R |  |  | 

## 输出
<a name="outputs3"></a>
+ 数据访问模式矩阵

## 示例
<a name="sample3"></a>


| **访问模式** | **优先级** | **读或写** | **描述** | **类型（单个项目、多个项目或所有项目）** | **关键属性** | **筛选条件** | **结果排序** | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
| 创建用户个人资料 | 高 | 写入 | 用户创建新的个人资料 | 单个项目 | 用户名 | 不适用 | 不适用 | 
| 更新用户个人资料 | 中 | 写入 | 用户更新其个人资料 | 单个项目 | 用户名 | 用户名 = 当前用户 | 不适用 | 