es 的文档看完了,但对查询还是不太理解,例如 filtered

2016-02-23 17:51:32 +08:00
 vlike
文档中说,要多用过滤器少用查询语句,因为过滤器是可以缓存的不参与计算.....,

以下两个查询的结果是一样的,但我说不太清这两个语句的分别(求解释),

不过重点是:语句 B 要比 A 快 3 倍,按我的理解 filtered , filter 不就是过滤作用的吗,理论上更快才是吧?



查询 A

{
"query" : {
"filtered" : {
"filter" : {
"term" : {
"age" : 20
}
}
}
}
}



查询 B

{
"query": {
"bool": {
"must": [
{
"term": {
"age": "20"
}
}
]
}
}
}
5069 次点击
所在节点    Elasticsearch
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/258525

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX