DynamoDB - 数据类型


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

属性数据类型

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

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

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

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

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

标量

  • 数字- 限制为 38 位数字,并且可以是正数、负数或零。

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

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

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

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

文档

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

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

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

操作数据类型

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

  • AttributeDefinition - 它表示键表和索引模式。

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

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

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

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

  • PutRequest - 它代表 PutItem 请求。

  • TableDescription - 它表示表属性。

支持的 Java 数据类型

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