【发布时间】:2015-09-21 18:09:09
【问题描述】:
在 DynamoDB 中是否有办法保证 n 结果将是准确的
如果我指定一个限制和一个过滤器返回?
我看到的问题是文档状态:
在响应中,DynamoDB 返回 限值的范围。例如,如果您发出查询或扫描 限制值为 6 且没有过滤器表达式的请求, DynamoDB 返回表中与 请求中指定的关键条件(或仅前六项 在没有过滤器的扫描的情况下)。如果您还提供 FilterExpression 值,DynamoDB 将返回第一个中的项目 六个也符合过滤器要求(结果数 返回将小于或等于 6)。
所以这意味着将检索 6 个项目,然后应用过滤器。我怎样才能继续搜索,直到我得到正好“6”个项目? (理想情况下,查询中有一些设置可以继续进行,直到达到限制 - 或达到耗尽)
例如,假设我查询 50 个人,他们的名字是“john”,Dynamo 将返回 50 个人,然后应用“john”过滤器。现在只返回了3个人。 有没有办法可以确保它会继续搜索,直到满足 50 的限制?
我不想使用Scan,因为Scan 总是 会搜索表中的每个项目(无论限制如何——如果我在这方面错了,请纠正我)。
我怎样才能使查询的过滤器懒惰直到满足限制?如何继续搜索直到满足限制?
【问题讨论】:
-
真挖你的头像
标签: amazon-web-services amazon-dynamodb