更新时间:2024-11-29 GMT+08:00
过滤查询(filter)
Elasticsearch的查询操作分为2种:查询(query)和过滤(filter),查询(query)默认会计算每个返回文档的得分,然后根据得分排序;而过滤(filter)只会筛选出符合的文档,并不计算得分,且可以缓存文档。
对于非全文检索的使用场景,如果不关心查询结果和查询条件的相关度,只是想查找目标数据,可以使用filter来提高查询效率。
query安全模式下查询示例:
curl -XGET --tlsv1.2 --negotiate -k -u : "https://ip:httpport/myindex-001/_search?pretty" -H 'Content-Type: application/json' -d' { "query": { "match": { "age": "56" } } }'
filter安全模式下查询示例:
curl -XGET --tlsv1.2 --negotiate -k -u : "https://ip:httpport/myindex-001/_search?pretty" -H 'Content-Type: application/json' -d' { "query": { "bool": { "filter": { "match": { "age": "56" } } } } }'
父主题: 数据查询调优