DynamoDB-扫描后应用限制的最佳方法

时间:2018-10-10 09:19:14

标签: amazon-dynamodb

我正在DynamoDB表中执行扫描功能,并且运行良好。现在,我要在应用过滤器后限制结果。

我已经读到,当我将FilterExpression和Limit结合使用时,DynamoDB将先应用Limit然后是FilterExpression。

有可能做相反的事情吗?第一过滤器是否超过限制?我试图避免在代码上这样做,因为它会返回比我所需更多的数据。

1 个答案:

答案 0 :(得分:1)

DynamoDB中没有针对此操作的解决方案。

您可以改为使用LastEvaluatedKey进行结果的模拟过滤,尽管这也不是一种有效的操作,并且可能导致全表扫描。

  

查询操作可以返回空结果集和   LastEvaluatedKey,如果为结果页读取的所有项目均为   过滤掉。

     

要获取匹配项的完整计数,请使用LastEvaluatedKey   先前请求中的值并将其用作ExclusiveStartKey   下一个请求中的值。重复此操作,直到DynamoDB不再   返回LastEvaluatedKey值。