首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >DynamoDB GSI如何处理丢失的属性?

DynamoDB GSI如何处理丢失的属性?
EN

Stack Overflow用户
提问于 2019-01-05 03:38:51
回答 1查看 10.9K关注 0票数 9

查看这是关于GSI的DynamoDB文档,我发现了以下评论:

全局辅助索引只跟踪其键属性实际存在的数据项。

这到底意味着什么呢?

  1. 从GSI的角度看,缺少Partition Key和/或Sort Key将不会导致GSI中的任何附加项。 例如)"GameTitle“和"TopScore”是必需的
  2. 如果您指定为具有INCLUDE选项的任何属性缺少数据,将不会导致GSI中的任何附加项。 例如)所有投射到GSI的属性--甚至是“胜利”、“失败”--都是必需的。

我怀疑"key属性“指的是1.,从INCLUDE选项的角度看,任何丢失的数据在查询GSI时都将是空的,但希望检查我的理解是否正确。

而且,GSI和LSI在这个空间中没有区别吗?

EN

Stack Overflow用户

回答已采纳

发布于 2019-01-07 18:40:37

在链接到全球次级指标的页面中

然后你引用的下面两行是:

全局辅助索引只跟踪其键属性实际存在的数据项。例如,假设您向GameScores表添加了另一个新项,但只提供了所需的主键属性: 因为您没有指定TopScore属性,所以DynamoDB不会将此项传播到GameTitleIndex。

因此,如果在属性GSIKey上有一个GSI,并且在没有该属性的表中添加了一个记录,那么GSI将不会获得该记录的条目。

如果使用GSIKey添加记录,则GSI将为该记录提供一个条目。

任何附加的投影属性都将存在或不存在。和桌子本身一样。

这方面的技术术语是https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-indexes-general-sparse-indexes.html;它不需要包含与基表一样多的条目。

本地二级指数也很稀疏。

票数 15
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54048765

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档