查看有关 GSI 的 DynamoDB 文档,我发现了以下评论:
全局二级索引仅跟踪其关键属性实际存在的数据项。
以下哪一项是准确的意思?
Partition Key和/或Sort Key从 GSI 的角度来看将导致 GSI 中没有其他项目,INCLUDE选项的任何属性的数据将导致GSI中没有其他项目,我怀疑“关键属性”指的是 1.,以及来自 INCLUDE选项的角度来看都会在查询 GSI 时返回为空,但想检查我的理解是否正确。
另外,GSI和LSI在这个领域会不会有区别?
在您链接到全球二级索引的页面中
然后你引用的下两行是:
全局二级索引仅跟踪其关键属性实际存在的数据项。例如,假设您向 GameScores 表添加了另一个新项目,但只提供了必需的主键属性:
因为您没有指定 TopScore 属性,DynamoDB 不会将此项目传播到 GameTitleIndex。
因此,如果您在属性 GSIKey 上有一个 GSI,并且您在没有该属性的情况下向表中添加了一条记录,则 GSI 将不会获得该记录的条目。
如果您使用 GSIKey 添加记录,则 GSI 将具有该记录的条目。
任何额外的投影属性要么存在,要么不存在。与桌子本身一样。
技术术语是稀疏索引;它不必包含与基表一样多的条目。
本地二级索引也很稀疏。
| 归档时间: |
|
| 查看次数: |
5663 次 |
| 最近记录: |