【Elastic知识简报】query与filter的区别

简介: 1、因此filter的查询是没有评分的,而query的查询是有评分的2、filter有相应的缓存机制,可以提高查询效率,并且因为filter不计算相关性评分,所以查询速度更快

1. query与filter的区别

从ES5.6开始filter被并到bool查询中使用,filter的查询注重结果,也就是目标与查询条件是否匹配;而query的查询注重过程,也就是目标与查询条件的匹配度,匹配度越高的优先输出

2. 总结

1、因此filter的查询是没有评分的,而query的查询是有评分的
2、filter有相应的缓存机制,可以提高查询效率,并且因为filter不计算相关性评分,所以查询速度更快

3. query与filter如何配合

利用filter的高性能快速过滤大部分数据,再利用query来精确查询所需要的数据。使用query+filter既能保证速度又能保证结果的相关性

目录
相关文章
|
自然语言处理 Java 索引
Elastic Search一些用法
Elastic Search一些用法
|
算法
白话Elasticsearch14-深度探秘搜索技术之基于multi_match 使用most_fields策略进行cross-fields search弊端
白话Elasticsearch14-深度探秘搜索技术之基于multi_match 使用most_fields策略进行cross-fields search弊端
97 0
白话Elasticsearch12-深度探秘搜索技术之基于multi_match + best fields语法实现dis_max+tie_breaker
白话Elasticsearch12-深度探秘搜索技术之基于multi_match + best fields语法实现dis_max+tie_breaker
93 0
|
搜索推荐 C++
白话Elasticsearch13-深度探秘搜索技术之基于multi_match+most fields策略进行multi-field搜索
白话Elasticsearch13-深度探秘搜索技术之基于multi_match+most fields策略进行multi-field搜索
92 0
|
数据挖掘
白话Elasticsearch42-深入聚合数据分析之案例实战__bucket filter:统计牌品最近一个月的平均价格(Filter Aggregation)
白话Elasticsearch42-深入聚合数据分析之案例实战__bucket filter:统计牌品最近一个月的平均价格(Filter Aggregation)
138 0
|
Java Apache 索引
白话Elasticsearch10-深度探秘搜索技术之基于dis_max实现best fields策略进行多字段搜索
白话Elasticsearch10-深度探秘搜索技术之基于dis_max实现best fields策略进行多字段搜索
86 0
|
搜索推荐 索引
白话Elasticsearch22- 深度探秘搜索技术之match_phrase_prefix实现search-time搜索推荐
白话Elasticsearch22- 深度探秘搜索技术之match_phrase_prefix实现search-time搜索推荐
88 0
|
应用服务中间件 数据安全/隐私保护 开发者
Filter 的应用场景、Filter 的目标资源、小结| 学习笔记
快速学习 Filte r的应用场景、Filter 的目标资源、小结。
121 0
|
JSON 算法 数据格式
Query 概述|学习笔记
快速学习 Query 概述。
144 0
|
JSON 算法 Apache
Query 概述 | 学习笔记
快速学习 Query 概述