我有一个dynamoDb表customers
。
在此表中,我有20m +数据行。
表的模式:
我有一个名为
的属性 "assigned_lists": [
"e9d55940-77da-11e9-9c25-df4d7393de10",
...
]
在此表中。 assigned_lists
是字符串的列表数据类型。我想要属于某个assigned_lists
的那个客户。只是我搜索了dynamo DB的contains函数
FilterExpression: "contains(#list, :searchForThisList)"
我要查询此表,限制为100,这意味着我需要100个属于给定assigned_lists
的客户,一个客户可以属于多个assigned_lists
,所以我使用LIST数据类型。
我的极限方法:
限制:100,
Dynamo.query(params, (err,data)=>{
if (typeof data.LastEvaluatedKey != "undefined") {
if (data.Count < params.Limit) { //calculating that we get all the data or not
params.ExclusiveStartKey = data.LastEvaluatedKey;
params.Limit -= data.Count; //Setting the new limit for the next query
dynamoDb.query(params, againComeHere);
} else {
//my process with the data
}
})
我有一些问题:
注意:我是dynamoDB的初学者
1。。我是否使用精细的逻辑进行限制?因为生成结果要花费2分钟以上的时间,所以我需要将其显示在网站的最前面
2。。dynamoDb对我来说是正确的数据库吗?
我渴望得到答复。