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 中的基本数据结构。关系数据库管理系统 (RDBMS) 要求您在创建表时定义表的架构。相比之下,DynamoDB 表没有架构 - 与主键不同,您在创建表时无需定义任何属性或数据类型。

SQL

使用 CREATE TABLE 语句创建表,如以下示例所示。

Copy
CREATE TABLE Music ( Artist VARCHAR(20) NOT NULL, SongTitle VARCHAR(30) NOT NULL, AlbumTitle VARCHAR(25), Year INT, Price FLOAT, Genre VARCHAR(10), Tags TEXT, PRIMARY KEY(Artist, SongTitle) );

此表的主键包含 ArtistSongTitle

您必须定义表的所有列和数据类型以及表的主键。 (如有必要,您稍后可以使用 ALTER TABLE 语句更改这些定义。)

许多 SQL 实现可让您将表的存储规范定义为 CREATE TABLE 语句的一部分。除非另外指明,否则使用默认存储设置创建表。在生产环境中,数据库管理员可以帮助确定最佳存储参数。

DynamoDB

使用 CreateTable 操作可创建表,并指定参数,如下所示:

Copy
{ TableName : "Music", KeySchema: [ { AttributeName: "Artist", KeyType: "HASH", //Partition key }, { AttributeName: "SongTitle", KeyType: "RANGE" //Sort key } ], AttributeDefinitions: [ { AttributeName: "Artist", AttributeType: "S" }, { AttributeName: "SongTitle", AttributeType: "S" } ], ProvisionedThroughput: { ReadCapacityUnits: 1, WriteCapacityUnits: 1 } }

此表的主键包括 Artist (分区键) 和 SongTitle (排序键)。

您必须向 CreateTable 提供以下参数:

  • TableName – 表名称。

  • KeySchema – 用于主键的属性。有关更多信息,请参阅 表、项目和属性主键

  • AttributeDefinitions – 键架构属性的数据类型。

  • ProvisionedThroughput – 每秒需对此表执行的读取和写入次数。DynamoDB 将保留足量的存储和系统资源,以便始终满足您的吞吐量要求。如有必要,您稍后可使用 UpdateTable 操作后更改这些设置。由于存储分配完全由 DynamoDB 管理,因此您无需指定表的存储要求。

注意

有关使用 CreateTable 的代码示例,请参阅 DynamoDB 入门

本页内容: