Dynamodb:使用CreateTable在AttributeType Map,List,JSON中创建一个表
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dynamodb:使用CreateTable在AttributeType Map,List,JSON中创建一个表相关的知识,希望对你有一定的参考价值。
如何在DyanamoDB中创建一个包含AttributeType Set,Map或JSON的表。我不想通过插入(PutItem)或更新数据来创建表结构,因为我需要在投影中创建一个包含Map,List或JSON属性的索引。我需要创建一个创建时间(CreateTable)。我也更喜欢使用AWS CLI。以下示例:
{
TableName : "Music",
KeySchema: [
{
AttributeName: "Artist",
KeyType: "HASH", //Partition key
}
],
AttributeDefinitions: [
{
AttributeName: "Artist",
AttributeType: "S"
},
{
AttributeName: "instruments"
AttributeType: // Map or List or JSON type
}
],
... }
答案
在创建DynamoDB表时,您只能定义属于键定义的属性。换句话说,只有在创建DynamoDB表时才能定义哈希键和排序键属性。散列和排序键属性必须是标量属性。
文档和设置数据类型不能是键属性的一部分。此外,您无法在这些属性类型上创建索引。
标量类型 - 标量类型只能表示一个值。标量类型是数字,字符串,二进制,布尔值和null。
文档类型 - 文档类型可以表示具有嵌套属性的复杂结构 - 例如您可以在JSON文档中找到的。文档类型是列表和地图。
设置类型 - 集类型可以表示多个标量值。集类型是字符串集,数字集和二进制集。
以上是关于Dynamodb:使用CreateTable在AttributeType Map,List,JSON中创建一个表的主要内容,如果未能解决你的问题,请参考以下文章