例如,发电机数据库有格式数据:-
{
"id":"<id>",
"field-1":"<field-1-value>",
"field-2":"<field-2-value>",
"field-3":"<field-3-value>",
"field-4":"<field-4-value>",
"metadata":{
"subfield-1":"<subfield-1-value>",
"subfield-2":"<subfield-2-value>"
}
}因此,我在id列上有一个分区键,在字段1上有排序键。现在,比方说,我有一个要求,对于相同的id,如果我们希望在子字段-1值上具有搜索功能,那么在Dynamo中可以很容易地做到这一点,而无需创建任何索引。最大值。每个id的行数将为70行。所以,看起来像是一小部分数据。
请告诉我你的看法。
发布于 2017-06-07 15:29:46
是的,这可以在没有索引的情况下实现。您可以使用FilterExpression过滤数据,即metadata.subfield-1。
示例:
var params = {
TableName : 'yourTableName',
KeyConditionExpression : 'id = :idval',
FilterExpression : '#metadata = :subField1Val',
ExpressionAttributeNames : {
'#metadata' : 'metadata.subfield-1'
},
ExpressionAttributeValues : {
':idval' : '7',
'subField1Val' : 'somevalue'
}
};https://stackoverflow.com/questions/44379444
复制相似问题