如何在DynamoDB GSI属性投影中指定Map类型的嵌套字段?
关于DynamoDB GSI投影嵌套属性的问题
完全可以做到只投影你需要的name、url和total_orders,不需要把整个stats对象都投影进去。
具体操作方式:
- 创建GSI时,选择投影特定属性(对应ProjectionType设为
INCLUDE) - 在投影属性列表里,直接指定:
- 顶级属性:
name、url - 嵌套属性的完整路径:
stats.revenue.total_orders
- 顶级属性:
DynamoDB支持直接指定嵌套属性的完整路径来进行投影,这样GSI里只会包含你指定的这三个字段,不会冗余存储整个stats对象,完美契合只投影所需数据的最佳实践。
需要注意的是,嵌套属性的路径要准确,层级之间用点号(.)分隔,比如这里的stats.revenue.total_orders就精准定位到了嵌套在两层Map里的total_orders字段。
内容的提问来源于stack exchange,提问作者dev1398
相关产品推荐
相关产品推荐

