📜  DynamoDB-数据类型

📅  最后修改于: 2020-11-28 13:55:32             🧑  作者: Mango


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

属性数据类型

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

  • 标量-这些类型表示单个值,包括数字,字符串,二进制,布尔值和null。

  • 文档-这些类型表示具有嵌套属性的复杂结构,包括列表和映射。

  • -这些类型表示多个标量,包括字符串集,数字集和二进制集。

请记住,DynamoDB是一种无模式的NoSQL数据库,在创建表时不需要属性或数据类型定义。与RDBMS相比,它只需要主键属性数据类型,而RDBMS在表创建时需要列数据类型。

标量

  • 数字-它们限制为38位数字,可以是正数,负数或零。

  • 字符串-它们是使用UTF-8的Unicode,最小长度> 0,最大400KB。

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

  • 布尔值-它们存储true或false。

  • -它们代表未知或未定义状态。

文件

  • 列表-它存储有序值集合,并使用方括号([…])。

  • Map-它存储无序的名称/值对集合,并使用花括号({…})。

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

动作数据类型

DynamoDB API保存操作使用的各种数据类型。您可以查看以下几种密钥类型的选择-

  • AttributeDefinition-它代表键表和索引架构。

  • 容量-它表示表或索引消耗的吞吐量量。

  • CreateGlobalSecondaryIndexAction-它表示添加到表的新的全局二级索引。

  • LocalSecondaryIndex-代表本地二级索引属性。

  • ProvisionedThroughput-表示索引或表的配置吞吐量。

  • PutRequest-代表PutItem请求。

  • TableDescription-它代表表属性。

支持的Java数据类型

DynamoDB为Java提供了对原始数据类型,Set集合和任意类型的支持。