2

我想知道,过滤器的顺序在 appengine 数据存储中是否重要?

例如,假设我们有两个过滤器:isDeleted 和 startDate。更改这两个过滤器属性的顺序是否重要?或者appengine是否自动优化过滤器。

例如,通过 isDeleted 过滤会缩小数据,然后按顺序过滤是有意义的:isDeleted 然后 startDate。但是,如果您以相反的顺序定义过滤器 startDate 然后 isDeleted,则此查询可能未优化。

我的问题是过滤器中过滤器或索引条目的声明顺序是否重要?或者这种优化是自动为您完成的?

4

1 回答 1

2

是的,这很重要。据我了解,您有一个索引已删除,开始日期。不要以相反的方式创建索引。如果您以相反的方式执行此操作,您将首先过滤日期,但稍后它将必须扫描该日期范围内的所有项目以查找未删除的项目。如果您按照我的建议进行操作,您只会查看未删除的内容,然后快速找到我的日期范围,而无需扫描所有内容。

于 2013-05-16T22:36:10.157 回答