【发布时间】:2016-09-29 21:37:57
【问题描述】:
我正在使用 DynamoDBMapper 与 DynamoDB 交互,并希望将非关键属性投影到我定义的本地二级索引。
如何在模型类中定义投影?二级索引的注释没有任何可以让我使用的属性。我无法在任何地方找到任何文档。
谢谢,
史利坎特
【问题讨论】:
标签: java indexing amazon-dynamodb
我正在使用 DynamoDBMapper 与 DynamoDB 交互,并希望将非关键属性投影到我定义的本地二级索引。
如何在模型类中定义投影?二级索引的注释没有任何可以让我使用的属性。我无法在任何地方找到任何文档。
谢谢,
史利坎特
【问题讨论】:
标签: java indexing amazon-dynamodb
DynamoDBMapper 不会帮助您将属性投影到索引。
创建索引(本地或全局)时,您必须指定要投影的属性:ALL、KEYS_ONLY 或 INCLUDE。如果您选择INCLUDE,您将选择应该将哪些属性投影到索引(默认包含键)。
然后您可以使用DynamoDBMapper 的query(...) 函数检索您刚刚创建的本地二级索引中的项目。
此查询结果中的对象将仅包含与您选择投影的属性相对应的字段的值,所有其他字段将为null。
因此,您的模型类不需要知道并且与将哪些属性投影到索引无关。您必须在创建索引时指定这些项目。
【讨论】: