使用List类型作为主键创建DynamoDB表

时间:2018-03-29 00:05:48

标签: amazon-dynamodb

我有一个用例,我想创建一个仅包含2个属性的Dynamodb表 - 字符串列表(例如,国家/地区)和布尔值。

我为每个国家/地区提取此值,并在出现真或假的情况下实现不同的逻辑。

我的问题是,创建一个dynamodb表的最佳方法(最佳实践)是什么。

我想到以下几种方法 -

  1. 布尔值作为键 使用布尔值作为键,将List作为另一个属性。

  2. 为每个国家/地区添加一行。 创建一个单独的记录,其中Country值为键,flag为属性。

  3. 使用国家/地区列表作为键和布尔值作为另一个属性。 (我不认为这是一个不错的选择)

  4. 在设计这样的表格时,最佳做法是什么?

    谢谢,

    普拉萨德

1 个答案:

答案 0 :(得分:2)

来自AWS DynamoDB Docs, NamingRulesDataTypes

  

创建表或辅助索引时,必须指定每个主键属性(分区键和排序键)的名称和数据类型。此外,每个主键属性必须定义为字符串数字二进制类型。

有许多选项可以为您的表格建模,但请记住,您必须遵守上述规则。

你的第二个案例很好:

  
      
  1. 为每个国家/地区添加一行。创建一个单独的记录,其中Country值为key,flag为属性。
  2.   
  • 分区键:country - 字符串
  • 您在创建时无需定义的某些列:flag - boolean