DynamoDB有没有办法在全局二级索引中只包含一些行?例如,我希望列出一个属性的列表,该属性表明它是否处于活动状态。如果它处于活动状态,我希望它显示在GSI中,但如果它不活动,则根本不需要进行预测。这可能吗?
答案 0 :(得分:1)
从我的测试来看,似乎你可以使用null作为范围键,不会投影没有该属性的行。
答案 1 :(得分:1)
GSI是一个稀疏索引,这意味着如果项目上不存在GSI的已定义分区和排序键,它将不存在于GSI中。
此外,请记住,GSI中的分区键和排序键不需要像基表一样唯一。 GSI不强制执行唯一性
不了解您的数据模型,您可以使用仅存在于GSI的Key Schema中的活动项目上的属性。
这可能会提供更多信息:https://www.abhayachauhan.com/2017/12/dynamodb-global-secondary-indexes
HTH