这是一个创建于 3214 天前的主题,其中的信息可能已经有所发展或是发生改变。
文档中说,要多用过滤器少用查询语句,因为过滤器是可以缓存的不参与计算.....,
以下两个查询的结果是一样的,但我说不太清这两个语句的分别(求解释),
不过重点是:语句 B 要比 A 快 3 倍,按我的理解 filtered , filter 不就是过滤作用的吗,理论上更快才是吧?
查询 A
{
"query" : {
"filtered" : {
"filter" : {
"term" : {
"age" : 20
}
}
}
}
}
查询 B
{
"query": {
"bool": {
"must": [
{
"term": {
"age": "20"
}
}
]
}
}
}