关于1:
搬家
genre
与过滤器上下文匹配可能会加快一点速度(尽管这取决于许多其他因素),但您将失去排名,这对您来说可能重要,也可能不重要。最后,使用
must
当排名很重要或
filter
如果不是这样的话,你唯一的目标就是匹配一个文档或者不给出一些标准。
此外,使用类型关键字只会得到“精确匹配”的语义,这可能是您想要的…或者不,这取决于您创建查询的方式(用户输入或控制的选择列表)。
关于2:
must_not
是
already in a filter context
所以它不会比你已经看到的更简单。筛选器上下文由两个部分组成
滤波器
+
绝对不能
.
最后一件事是,当有人问到性能优化时,我总是补充:
Premature optimization is the root of all evil
所以,只有当你真正看到性能问题的时候,才这样做,这是前所未有的。