solr搜索之搜索精度问题我已经尽力了!!!
solr搞了好久了,没啥进展,没啥大的突破,但是我真的尽力了!
solr7可能是把默认搜索方式去掉了,如下:
在solr7里找了半天以及各种查资料也没发现这个默认搜索方式,后来想,可能是被edismax里的mm取代了吧,都是控制搜索精度的,如下:
这个mm还是挺解决问题的,但是对于我们公司来说就差那么一点,就一点。就这一点我没有解决。正常情况下这个参数能满足大部分需求。它有好多赋值的方式,具体自己参考:点击打开链接。
拿我做的举例:商品搜索。
我的主搜索是这样的:product_goods_name:电脑^3 OR (product_goods_name:电脑 AND product_category_name:电脑)^1.5
为什么这么写呢,举个例子,比如说搜电脑,如果按照普通的搜索语句product_goods_name:电脑,搜到的商品可能是电脑包,电脑桌等商品排在前面,明显这不是我们想要的,后来发现每种商品都有属于自己的分类,比如电脑的分类是“电脑,办公”所以干脆让分类也作为查询条件吧,于是就写成这样了。
至于为什么还加了权重,再举个例子,不如说搜电脑桌,不加权重搜到的商品可能是电脑,明显这不是我们想要的,所以总而言之就是商品名匹配为重,分类匹配为辅。
那么问题就来了,这样做就严重影响了mm的效果,它针对的是单一域,而我的显然不是单一域,所以有时候搜一些商品如果库里的产品匹配度达不到你设定的值,那么它就会匹配分开的词,比如说你搜一个“儿童食品”,库里没有达到你的匹配度的商品,那么它就会搜出商品名包含“儿童”或者“食品”的商品,这就范围大了去了,所以到现在还没找到解决办法,愁!
solr搜索之搜索精度问题我已经尽力了!!!的更多相关文章
- 基于Solr的空间搜索
如果需要对带经纬度的数据进行检索,比如查找当前所在位置附近1000米的酒店,一种简单的方法就是:获取数据库中的所有酒店数据,按经纬度计算距离,返回距离小于1000米的数据. 这种方式在数据量小的时候比 ...
- solr服务(搜索服务)
1 Solr实现全文搜索 1.1 Solr是什么? Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器.Solr提供了比Lucene更为丰富的 ...
- 利用SOLR搭建企业搜索平台 之——MultiCore
Solr Multicore 是 solr 1.3 的新特性.其目是一个solr实例,可以有多个搜索应用. 下面着手来将solr给出的一个example跑出来.这篇文章是基于<利用SOLR搭建企 ...
- SOLR搭建企业搜索平台
一. SOLR搭建企业搜索平台 运行环境: 运行容器:Tomcat6.0.20 Solr版本:apache-solr-1.4.0 分词器:mmseg4j-1.6.2 词库:sogou-dic ...
- Google 谷歌网页搜索, 学术搜索
Google 谷歌网页搜索, 学术搜索 1. 网页搜索引擎-Google * https://letsgg.tk/ * https://google.kfd.me/ 谷歌搜索镜像: http://d ...
- windows10 搜索桌面搜索功能失效的解决
windows桌面的搜索框用起来很方便,很多时候直接把不常用的程序的快捷方式删掉,直接从搜索框搜索就可以,但是这两天突然不能用了,今天晚上找了一下原因,终于弄好了. 参考知乎上面的陈滔滔的方法: ht ...
- 【Solr】 solr对拼音搜索和拼音首字母搜索的支持
问:对于拼音和拼音首字母的支持,当你在搜商品的时候,如果想输入拼音和拼音首字母就给出商品的信息,怎么办呢? 实现方式有2种,但是他们其实是对应的. 用lucene实现 1.建索引, 多建一个索引字段 ...
- 利用SOLR搭建企业搜索平台 之——solr配置solrconfig.xml
来源:http://blog.csdn.net/zx13525079024/article/details/25310781 solrconfig.xml配置文件主要定义了SOLR的一些处理规则,包括 ...
- 利用SOLR搭建企业搜索平台 之——模式配置Schema.xml
来源:http://blog.csdn.net/awj3584/article/details/16963525 schema.xml这个配置文件可以在你下载solr包的安装解压目录的\solr\ex ...
随机推荐
- tcpdump 实现原理【整理】
参考:http://blog.sina.com.cn/s/blog_523491650101au7f.html 一.tcpdump 对于本机中进程的系统行为调用跟踪,strace是一个很好的工具,而在 ...
- 数据模板--DataTemplate
DataTemplate 的 "DataType" 通常就是 “ViewModel” ——视图模型(亦可不恰当称之为:数据模型) <DataTemplate DataType ...
- Credentials(Rails5.2新) 很基础的知识点,具体还要实操。
Credentials(Rails5.2新) 增加config/credentials.yml.enc 憎加config/master.key 移除了5.1使用的config/secrets.yml, ...
- Lightoj-1220
https://vjudge.net/problem/LightOJ-1220 求x=bp中最大的p,x可能为负数. 因数分解,x=p1x1*p2x2*...*pnxn x=(p1x1'*p2x2'* ...
- gradle基础配置
gradle构建脚本基础 gradle常用命令 //列出项目的所有属性. 这样你就可以看到插件加入的属性以及它们的默认值. gradle properties //列出项目的所有任务 gradle ...
- git 基础入门操作
前言: 介绍基础的git入门级指令,虽然git指令非常多,但是实际工作中,我们会用到的非常少,小项目中甚至只需要用到2.3个.而且大部分人都会采用gui,而不是每次都打开终端然后输一长串难记的指令. ...
- Sizzle源码分析:二 词法分析
上一篇我们了解了Sizzle的整体流程,下面我开始一点点分析各个流程,我们进行查询的第一步就是词法分析tokenize,同样先了解下思路,如果是#div_test > span input[ch ...
- js固定表头的实现(转)
原文链接:http://www.th7.cn/web/js/201509/121055.shtml 参考链接:http://www.jb51.net/article/102568.htm 写两个表格, ...
- Centos 7 系统详解
安装CentOS 7系统后,变化竟然这么大? 一.Runlevel首先一条,原来一直用的CentOS-6.5-x86_64-minimal.iso光盘镜像(400M左右无图形系统小巧便捷),而7目 ...
- Unix网络编程第三版源码编译
配置: $ cd Unix-Network-Programming/ $ chmod 755 configure $ ./configure 主要的工作是检查系统是否有源码编译所依赖的各种资源(系统版 ...