首先说说 dismax这个功能,它是基于lucene的DisjunctionMaxQuery去 扩展的,就是说,实际上用到的就是DisjunctionMaxQuery的这个查询类。查询api,可以知道是 对查询的几个域中,取最大的打分,而不是想boolean查询那样,要几个域的查询的分数叠加。

1、q.alt, 没有看明白

2、qf对默认查询增加权重比值,比如:fieldOne^1.9 fieldTwo fieldThree^5 ,值越大权重越大

也可以是

1、bf内字段必须是索引的,该出填写的是查询函数   。提供一个强大的功能就是使用用户设置的公式来对文档的score进行计算。这里所说的公式也就是solr的function queries,使用bf参数来操作score。edismax支持boost参数来进行function query。可以使用bf或boost多次。bf的函数查看solr api文档http://wiki.apache.org/solr/FunctionQuery

最终的排序打分,可以根据 bf打分与 lucene的sorce 相加,得到最后打分

2、qf

3、mm , mm=2 就是有两个符合搜索的词 就返回改条 .对应着lucene的类BooleanScorer2

eg:

性别:女  MUST
年龄:<25  SHOULD
胸围: >C should
收入: >10000 should

要符合两个条件才会被 hit,要不直接去掉

4、pf查询字段,   就是phrase fields的缩写,   这样在schema不用制定默认字段

5、ps,phrase slop, 坡度 ,相同于 编辑距离的值,

eg: document:"周杰伦“,query:”杰伦周“,这两个词,如果用 phrasequery,但 slop=2的时候,搜索不出来,当,slop=3的时候,可以搜索出来

6、qs

7、

8、tie:DisjunctionMaxQuery q = new DisjunctionMaxQuery(tie);

这个查询是相当于布尔查询的  
不过里面的关系只能是should  
 最后的分数不是相加,而是取最大值 

9、bq,就是boost queries ,bq参数可以用来指定多个查询,类似于automatic phrase boost

当是多个查询的时候,就是 BooleanClause.Occur.SHOULD查询,只有仅有一个查询并且

if (1.0f == f.getBoost() && f instanceof BooleanQuery)  的时候,才是保留着原先的查询。

具体见:DisMaxQParser

10、uf

随便说一下 各个Query的不同做法

1、TermQuery,只是简单的按term 去查询?

2、BooleanQuery,布尔查询 ,与或?

3、RangeQuery

4、PrefixQuery就是使用前缀来进行查找的。

5、多关键字的搜索—PhraseQuery

6、FuzzyQuery是一种模糊查询,它可以简单地识别两个相近的词语。

7、使用通配符搜索—WildcardQuery

8、DisjunctionMaxQuery

solr:关于dismax的使用情况(转:https://my.oschina.net/momohuang/blog/145379)相关推荐

  1. https://my.oschina.net/closeday/blog/297225

    zookeeper 官网:http://zookeeper.apache.org/ 现在最新版本是 3.4.6 ,但是这个版本我没有运行起来,可能是那配置出现问题了,现在我用的是3.4.5 http: ...

  2. Redmine-4.1.1 异步邮件通知如何配置(使用smtp方式,支持TLS):https://my.oschina.net/SamXIAO/blog/4973213

    https://www.redmine.org/issues/30068 https://my.oschina.net/SamXIAO/blog/4973213

  3. 在线代码格式化网址:https://tool.oschina.net/codeformat/xml

    当遇到问题需要我们排查查日志的时候,会遇到日志打印混乱的情况 这时梳理会很困难,需要在线"洗日志",将其格式化成各种格式 网址:https://tool.oschina.net/c ...

  4. 异常:fatal: unable to access 'https://git.oschina.net/pcmpcs/library.git/': Could not resolve host...

    git  fork项目时出现的异常. 原因: 我以前用的是ssh地址做的远程通信地址,而这次是用的是https,因为很久没用,所以忘记了以前是用ssh的了. 解决方案一:复制ssh协议的地址,然后再关 ...

  5. Solr in Action 翻译完成情况

    Solr in action读书笔记章节分布 第一篇 初识Solr 第1章 Solr简介  已完成 第2章 了解Solr   待整理 第3章 Solr关键概念 第4章 Solr配置 第5章 索引 第6 ...

  6. solr 自定义 dismax查询方式

    1.在solrconfig.xml中增加 Xml代码   <queryParser name="imdismax" class="com.szhtp.search. ...

  7. Solr所有的查询解析器Query Parsers(转:http://blog.csdn.net/jiangchao858/article/details/53859731)

    摘要: Solr除了支持常见的解析器之外,还有一些特殊用途的解析器,为了便于之后查阅,总结一下.本文整理自Solr官方文档. 解析器 说明 Standard Query Parser Solr的标准查 ...

  8. Linux --Solr 安装/配置

    2019独角兽企业重金招聘Python工程师标准>>> 由于 solr 基于 lucene, 而 lucene 是基于 java, 所以安装 Solr 前要安装 java: http ...

  9. Solr安装配置(包含Tomcat和jdk)

    一.jdk-7windows-x64    下载地址:http://pan.baidu.com/s/1skg1UMx 1.安装:直接解压,然后运行 jdk-7u80-windows-x64.exe 即 ...

最新文章

  1. 洛谷P2397 yyy loves Maths VI (mode) 摩尔投票
  2. 响应格式html,设置响应格式的HTML邮件
  3. 和搜狗输入法快捷键冲突_电脑输入法怎么设置成搜狗双拼?
  4. php 对比两个压缩包内容,php实现的zip文件内容比较类
  5. nosql非关系型数据库_从Datomic出发,革命性的非NoSQL数据库
  6. ajax时间控件,带有ajax的JQuery中的插件datetimepicker出错
  7. Java常用接口与类——Math类、Random类、BigDecimal类
  8. 第九届蓝桥杯-嵌入式比赛体会与备赛经验
  9. 小知识--windows下的电脑关机注销等命令
  10. 解决java环境变量配置不生效
  11. 【Python游戏】Python实现一个简易版本的阴阳师游戏 | 附带源码
  12. $root、$parent、$ref以及父组件方法共享——学习笔记
  13. [Google] 再见 SharedPreferences 拥抱 Jetpack DataStore
  14. dell服务器分区表修复,使用 BIOSConnect 恢复 SupportAssist OS Recovery 分区
  15. 使用pandas来根据出生日期判断星座
  16. 小豆社保「社保代缴」短信接口被盗刷解决方案-企业短信防火墙
  17. CentOS7修改内核安装锐速
  18. win10 查看GPU型号,驱动版本,CUDA版本
  19. java8 List去重
  20. 厦门国际银行”数创金融杯“比赛思路及总结

热门文章

  1. python中的lambda 和java中的lambda有什么不同?lambda相关介绍
  2. python 项目自动生成requirements.txt文件
  3. Python 官方推荐的一款打包工具
  4. VTK:vtkCellPicker用法实战
  5. wxWidgets:wxListCtrl 示例
  6. boost::mp11::mp_fill相关用法的测试程序
  7. boost::geometry::index::detail::union_content用法的测试程序
  8. Boost:同步化的测试程序
  9. Boost:是否对齐的测试程序
  10. DCMTK:搜索助手类的测试程序