DynamoDB - 数据类型

DynamoDB支持的数据类型包括特定于属性,操作和您选择的编码语言的数据类型.

属性数据类型

DynamoDB支持表属性的大量数据类型.每种数据类型都属于以下三个类别之一 :

  • Scalar : 这些类型表示单个值,包括number,string,binary,Boolean和null.

  • 文档 : 这些类型代表一个拥有嵌套属性的复杂结构,包括列表和地图.

  • 设置 : 这些类型代表多个标量,包括字符串集,数字集和二进制集.

将DynamoDB记为无模式NoSQL数据库创建表时不需要属性或数据类型定义.与RDBMS相比,它只需要主键属性数据类型,这需要在表创建时使用列数据类型.

标量

  • 数字 : 它们仅限于38位,可以是正数,负数或零.

  • String : 它们是使用UTF-8的Unicode,最小长度为> 0,最大长度为400KB.

  • Binary : 它们存储任何二进制数据,例如加密数据,图像和压缩文本. DynamoDB将其字节视为无符号.

  • 布尔值 : 它们存储真或假.

  • : 它们代表未知或未定义的状态.

文档

  • 列表 : 它存储有序的价值集合,并使用方括号([...])括号.

  • 地图 : 它存储无序的名称 - 值对集合,并使用大括号({...}).

Set

集合必须包含相同类型的元素,无论是数字,字符串还是二进制.对集合的唯一限制包括400KB项目大小限制,每个元素都是唯一的.

操作数据类型

DynamoDB API包含各种数据动作使用的类型.您可以查看以下键类型的选择 :

  • AttributeDefinition : 它代表关键表和索引架构.

  • 容量 : 它表示表或索引消耗的吞吐量.

  • CreateGlobalSecondaryIndexAction : 它表示添加到表格中的新全局二级索引.

  • LocalSecondaryIndex : 它代表本地二级索引属性.

  • ProvisionedThroughput : 它表示索引或表的预配置吞吐量.

  • PutRequest : 它代表PutItem请求.

  • TableDescription : 它表示表属性.

支持的Java数据类型

DynamoDB提供对原始数据类型的支持,为Java设置集合和任意类型.