我想知道,过滤器的顺序在 appengine 数据存储区中重要吗?
例如,假设我们有两个过滤器:isDeleted 和 startDate。是否改变这些的顺序 两个过滤器属性重要吗?或者appengine是否自动优化过滤器。
例如,通过 isDeleted 过滤可以将数据缩小,然后按 isDeleted 然后 startDate 的顺序过滤就有意义了。但是,如果您按照 startDate 然后 isDeleted 的相反顺序定义过滤器,则此查询可能未优化。
我的问题是过滤器声明的顺序或过滤器中索引条目的顺序重要吗?或者这个优化是自动为您完成的?
最佳答案
是的,这很重要。据我了解,您有一个索引已删除,开始日期。不要以其他方式创建索引。如果您以相反的方式进行操作,您将首先按日期进行过滤,但稍后必须扫描该日期范围内的所有项目以查找未删除的项目。 如果您按照我的建议进行操作,您将只查看未删除的内容,然后快速找到我的日期范围,而无需扫描所有内容。
关于google-app-engine - AppEngine 数据存储区中过滤器的顺序重要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16592323/