在嵌套字段上建立索引

时间:2015-05-25 13:06:16

标签: amazon-dynamodb

我正在尝试使用AWS Developer Console中的仪表板在嵌套字段上创建索引。例如。如果我有以下架构:

{ 'id': 1,
  'nested': {
     'mode': 'mode1',
     'text': 'nice text' 
  }
}

我能够在nested.mode上创建索引,但每当我按索引进行查询时,什么都没有回来。这让我觉得DynamoDB在字段名nested.mode而不是mode的{​​{1}}字段上创建了索引。任何提示重新。我可能做错了什么?

1 个答案:

答案 0 :(得分:21)

您不能(当前)从嵌套属性创建二级索引。来自Improving Data Access with Secondary Indexes in DynamoDB documentation(强调我的):

  

对于每个二级索引,您必须指定以下内容:

     

...

     
      
  • 索引的关键架构。 索引键架构中的每个属性都必须是String,Number或Binary类型的顶级属性。不允许嵌套属性和多值集。密钥模式的其他要求取决于索引的类型:
  •   

但是,您可以create an index on any top level JSON element