You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DynamoDB二级索引创建时是否需添加查询所需属性?

DynamoDB二级索引创建疑问解答
  • 核心结论:创建基于Age的二级索引时,只需要指定分区键为Age,不需要强制把后续要查询的Contact、Star、Name这些属性都加入索引定义里。
  • 具体解释:
    • DynamoDB的二级索引(这里你要建的是全局二级索引GSI)会自动把原表的分区键(也就是Person表的Name)投影到索引中,所以Name属性默认就能通过索引查询到。
    • 至于Contact和Star,你可以选择是否把它们设置为索引的投影属性:
      • 如果设置为投影属性,查询时直接从索引里读取这些数据,速度快,不消耗额外的读取容量;
      • 如果不设置,查询时DynamoDB会自动从原表(主表)里拉取这些数据,也就是所谓的"回表查询",这会多消耗一次读取容量,延迟也会稍高,但好处是索引的存储空间更小,维护成本低。
  • 简单来说:索引的分区键(Age)是必须指定的,要查询的其他属性可加可不加,全看你对查询性能和存储成本的权衡。

内容的提问来源于stack exchange,提问作者Qasim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 10:42:10