我认为我误解了DynamoDb。我想查询所有项目,json的子字段,它匹配我传递的标识符。结构类似于 -
{
"messageId": "ced96cab-767e-509198be5-3d2896a3efeb",
"identifier": {
"primary": "9927fd47-5d33-4f51-a5bb-f292a0c733b1",
"secondary": "none",
"tertiary": "cfd96cab-767e-5091-8be5-3d2896a3efeb"
},
"attributes": {
"MyID": {
"Type": "String",
"Value": "9927fd47-5c33-4f51-a5bb-f292a0c733b1"
}
}
}
我想查询DynamoDb中具有我传递的MyID值的所有项目。我读过的所有东西似乎都说你需要使用密钥,在我的例子中是messageId,这对于每个条目都是唯一的,而不是我可以使用的值。
希望这是有道理的。
答案 0 :(得分:0)
仅当您知道分区键的值时,才能使用 DynamoDB查询API 。否则,您可能需要使用FilterExpression
扫描整个表格以找到该项目。
您只能在标量属性上创建GSI。在上述情况下,它是文档数据类型(即MAP)。因此,无法创建GSI。