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

DynamoDB GSI条目数显示为0,serverless待办应用问题求助

问题诊断与解决思路

以下是几个可能导致GSI条目数为0的核心排查方向:

1. GSI属性定义与写入数据不匹配

  • 核对GSI创建时的主键属性名:确保GSI的分区键是gsi1pk、排序键是status,DynamoDB属性名区分大小写,不能出现GSI1PK或Status这类大小写错误。
  • 检查GSI排序键的类型:确认GSI的status被定义为字符串类型(S),和你写入的status: { S: todo.status }类型完全一致。如果GSI排序键被设为其他类型(比如数字N),字符串类型的status值不会被同步到GSI中。

2. GSI未完成初始化

  • DynamoDB创建GSI需要后台部署时间,即使是空表也可能存在短暂延迟。等待10-15分钟后再查看GSI条目数,同时在控制台GSI详情页确认状态为ACTIVE,如果是CREATING或UPDATING状态,说明还未就绪。

3. 写入数据的字段异常

  • 直接查看DynamoDB表中的已插入条目:确认gsi1pk值为emma1#todo、status值为pending,两个字段都存在且值正确。
  • 排查代码逻辑:确认todo.status没有为空值,gsi1pk的拼接逻辑(${todo.userId}#todo)没有出错。

4. GSI投影配置问题

  • 检查GSI的投影设置:确保是ALL、KEYS_ONLY,或是包含gsi1pk和status的INCLUDE模式。虽然GSI主键属性会被强制投影,但极端情况下的错误配置可能导致同步失败。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 18:32:48