Amazon DynamoDB
入门指南 (API Version 2012-08-10)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

DynamoDB 概念简介

本节简要介绍一些基本的 DynamoDB 概念。这有助于您完成教程中的步骤。

DynamoDB 与其他数据库管理系统相似,将数据存储在表中。 是数据的集合。例如,您可以创建一个名为 People 的表,其中可存储有关好友、家人或关注的任何其他人的信息。您也可以建立一个 Cars 表,存储有关人们所驾驶的车辆的信息。

项目

每个表包含多个项目。项目 是一组属性,具有不同于所有其他项目的唯一标识。在 People 表中,每个项目代表一个人。在 Cars 表中,每个项目代表一种车。在很多方面,项目都类似于关系数据库系统中的行、记录或元组。在 DynamoDB 中,对表中可存储的项目数没有限制。

属性

每个项目包含一个或多个属性。属性 是基础的数据元素,无需进一步分解。例如,Department 项目可能有 DepartmentIDNameManager 等属性。People 表中的项目可能包含 PersonIDLastNameFirstName 等属性。DynamoDB 中的属性在很多方面都类似于其他数据库管理系统中的字段或列。

主键

创建表时,除表名称外,您还必须指定表的主键。正如其他数据库中一样,DynamoDB 中的主键唯一标识表中的每个项目,因此,任意两个项目的主键都不相同。在表中添加、更新或删除一个项目时,您必须指定该项目的主键属性值。键值是必填项;您不可以忽略它们。

DynamoDB 支持两种不同类型的主键:

  • 分区键 - 简单的主键,由一个称为分区键的属性组成。DynamoDB 使用分区键的值作为内部哈希函数的输入值;哈希函数的输出值决定了项目将存储在哪个分区。使用简单主键,表中的任何两个项目都不能具有相同的分区键值。

  • 分区键和排序键 - 由两个属性组成的复合主键。第一个属性是分区键,第二个属性是排序键。DynamoDB 使用分区键的值作为内部哈希函数的输入值;哈希函数的输出值决定了项目将存储在哪个分区。具有相同分区键的所有项目按排序键值的排序顺序存储在一起。使用复合主键,两个项目可具有相同的分区键值,但这两个项目必须具有不同的排序键值。

注意

项目的分区键也称为其哈希属性。该术语源自服务使用的内部哈希函数,以基于数据项目的分区键值实现跨多个分区平均分布数据项目。

项目的排序键也称为其范围属性。该属于源自 DynamoDB 存储项目的方式,它按照排序键值有序地将具有相同分区键的项目存储在互相紧邻的物理位置。

二级索引

在 DynamoDB 中,您可以通过提供主键属性值读取表中的数据。如果您要使用非键属性读取数据,可以使用二级索引执行此操作。在表中创建二级索引后,您可以从索引中读取数据,方法与从表中读取数据大体相同。除了通过主键值访问数据,您的应用程序也可以借助二级索引使用许多不同的查询模式。

有关更多信息,请参阅 Amazon DynamoDB 开发人员指南 中的 Amazon DynamoDB:工作原理

本页内容: