区分按字段为中心的查询、词条为中心的查询

注意高频词项被高得分词项(冷僻的词项)取代的问题

1、best_fields :适用于多字段查询且查询相同文本;得分取其中一个字段的最高分。可通过tie_breaker(取值0~1)将低得分字段的分数引入的最终得分中。best_fields可与dis_max查询互换。ES内部转换为dis_max查询

operator(此查询中慎用)、minimum_should_match 作用于每个字段的子查询内部中。

例如:

"query":"complete conan doyle"

"field":["title","author","characters"]

"type":"best_fields"

"operator":"and"

等价于:

(+title:complete +title:conan +title:doyle) | (+autorh:complete +author:conan +autore:doyle) | (+characters:complete +characters:conan +characters:doyle)

2、corss_fields:适用于期望查询文本中所有的词都在文档中出现,而又不介意在文档中哪些字段中出现。operator作用于子查询与子查询之间的连接中

应用场景:信息被索引时分割到不同字段中,如住址,姓、名。多数情况下opertaotr使用and

上述查询等价于:

+(title:complete author:complete charactors:complete) +(title:conan author:conan charators:conan) +(title:doyle author:doyle charactor:doyle)

3、most_fields:适用于检索多处包含相同文本,但是恩本分析处理方式不同的文档。多数情况下operator使用or

ES内部转化为bool查询

应用场景:多语言处理

..。。

4、phrase:内部转换为dis_max,同best_fields

5、parase_prefix:内部转换为dis_max,同best_fields

读《深入理解Elasticsearch》点滴-multi_match的更多相关文章

  1. mysql系列:加深对脏读、脏写、可重复读、幻读的理解

    关于相关术语的专业解释,请自行百度了解,本文皆本人自己结合参考书和自己的理解所做的阐述,如有不严谨之处,还请多多指教. 事务有四种基本特性,叫ACID,它们分别是: Atomicity-原子性,Con ...

  2. 《深入理解Elasticsearch》README

    书目 <深入理解ElasticSearch>拉斐尔·酷奇,马雷克·罗戈任斯基[著]张世武,余洪森,商旦[译] 机械工业出版社,2016.1 本系列包括以下8篇笔记 第01章 Elastic ...

  3. 深入理解ElasticSearch(PDF版 内含目录)

    深入理解ElasticSearch 介绍: 本书涵盖了Elasticsearch的许多中高级功能,并介绍了缓存.ApacheLucene库以及监控等模块的内部运作机制.其中,还涉及一些实用案例,比如配 ...

  4. 读《深入理解Elasticsearch》点滴-改善查询相关性

    1.标准查询 query match _all query:"搜索字符串" operator:or 2.多匹配查询+区分权重 query multi_match "que ...

  5. 读《深入理解Elasticsearch》点滴-Elastic HQ监控工具

    1.多节点监控 2.类似war功能部署,tomcat即可使用 3.免费 4.ElasticHQ supports all major version of Elasticsearch from ver ...

  6. 读《深入理解Elasticsearch》点滴-聚合-top_hits

    以下是官网手册(部分)(v5.1) 直接直接看官网手册 https://www.elastic.co/guide/en/elasticsearch/reference/5.1/search-aggre ...

  7. 读《深入理解Elasticsearch》点滴-查询二次评分

    理解二次评分 二次评分是指重新计算查询返回文档中指定个数文档的得分,es会截取查询返回的前N个,并使用预定义的二次评分方法来重新计算他们的得分 小结 有时候,我们需要显示查询结果,并且使得页面上靠前文 ...

  8. 读《深入理解Elasticsearch》点滴-查询模版(结合官网手册,版本5.1)

    1.为什么使用查询模版 让应用程序开发者只需要把查询传递给elasticsearch,而不需要考虑查询语句的构造.查询DSL语法.查询结果过滤等细节知识. 2.使用版本5.1,查询模版在5.6中发生变 ...

  9. 读《深入理解Elasticsearch》点滴-查询评分

    计算文档得分的因子: 文档权重(document boost):索引期赋予某个文档的权重值 字段权重(field boost):查询期赋予某个文档的权重值 协调因子(coord):基于文档中词项个数的 ...

随机推荐

  1. 使用PHP结合Ffmpeg快速搭建流媒体服务实践

    一.背景 笔者想将自己收藏的一些电影放到网站上可以用来随时播放,不过遇到了一个问题,便是如果直接将MP4文件放放到网站目录当中,手机端必须下载整个视频才可以播放,而如果跨外网传输,这实在是不太现实. ...

  2. Redis数据类型的基本操作

    Redis数据类型的基本操作 一.string类型 1.设置value

  3. poj 2649 Factovisors 对n!进行因数分解

    Factovisors Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 4431   Accepted: 1086 Descr ...

  4. win10 无法安装/启用 .net framework 3.5

    有些程序依赖.net framework 3.5 win10可以在控制面板->程序和功能->启用或关闭windows功能 启用 但有时会报错 比如 0x800f0950 官方论坛的解决办法 ...

  5. Redis的最常被问到知识点总结

    1.什么是redis? Redis 是一个基于内存的高性能key-value数据库. 2.Reids的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库 ...

  6. Elasticsearch之更新

    public class UpdateElasticAPI { private static RestClient restClient; static { restClient=RestClient ...

  7. MyBatis基础之几道常见面试题详解

    (原文链接:http://www.studyshare.cn/blog/details/1178/1 一.开发中到底应该使用resultType还是resultMap? 强制使用resultMap,不 ...

  8. C# 表达式树遍历(二)

    一.前言 上一篇我们对表达式树有了初步的认识,这里我们将对表达式树进行遍历,只有弄清楚了他的运行原理,我们才可以对他进行定制化修改. 表达式系列目录 C# 表达式树讲解(一) C# 表达式树遍历(二) ...

  9. 并发之初章Java内存模型

    >>>>>>博客地址<<<<<< >>>>>>首发博客<<<<< ...

  10. Can't connect to MySQL server on 'localhost' (10038)

    平台:win7 已经安装好数据库,但是 在连接MySQL数据库时发生问题: 经过一系列的资料查找后,得到结论MySQL没有启动 解决方法: 将MySQL加入到Windows的服务中.切换到MySQL安 ...