Solr 搜索的过程和所须要的參数】的更多相关文章

一个典型的搜索处理过程,以及所须要的參数例如以下: qt:指定一个RequestHandler,即/select.缺省是使用DisMax RequestHandler defType:选择一个query parser.缺省是RequestHandler中配置的那个 qf:指定须要搜索的field.假设不指定就搜索全部的field start, rows:指明分页參数 fq:指明须要怎样过滤搜索结果.以及缓存搜索结果 wt:指定搜索结果的格式,比方json或xml 搜索所须要的參数基本上能够分为三…
MonkeyRunnerStarter是MonkeyRunner启动时的入口类,由于它里面包括了main方法.它的整个启动过程主要做了以下几件事情: 解析用户启动MonkeyRunner时从命令行传输进来的參数: 由于MonkeyRunner须要依据指定的參数才干做事情,比方输入的一个须要执行的脚本. 假设确实不知道不论什么參数的话它就会进入MonkeyRunner的交互模式,事实上就是Jythong的交互模式,让用户能够边写代码边执行 启动AndroidDebugBridge: 事实上就是启动…
关于Solr搜索标点与符号的中文分词你必须知道的(mmseg源码改造) 摘要:在中文搜索中的标点.符号往往也是有语义的,比如我们要搜索“C++”或是“C#”,我们不希望搜索出来的全是“C”吧?那样对程序员来说是个噩梦.然而在中文分词工具mmseg中,它的中文分词是将标点与符号均去除的,它认为对于中文来讲标点符号无意义,这明显不能满足我们的需求.那么怎样改造它让它符合我们的要求呢?本文就是针对这一问题的详细解决办法,我们改mmseg的源代码. 关键字:Solr, mmseg, 中文, 分词, 标点…
什么是Solr搜索 一.Solr综述   什么是Solr搜索 我们经常会用到搜索功能,所以也比较熟悉,这里就简单的介绍一下搜索的原理. 当然只是介绍solr的原理,并不是搜索引擎的原理,那会更复杂. 流程图 这是一个非常简单的流程图: User:即需要搜索的用户. Raw Data:需要搜索的内容,当然是源数据,可能是文本文件,可能是数据库的数据,可能是XML等等. Index:有格式的数据. 其实从图中可以看出来: Solr搜索非常类似于读写数据库的过程. Solr搜索最主要的两个问题(细节已…
一.solr搜索流程介绍 1. 前面我们已经学习过Lucene搜索的流程,让我们再来回顾一下 流程说明: 首先获取用户输入的查询串,使用查询解析器QueryParser解析查询串生成查询对象Query,使用所有搜索器IndexSearcher执行查询对象Query得到TopDocs,遍历TopDocs得到文档Document 2. Solr搜索的工作流程: 流程说明: 用户输入查询字符串,根据用户的请求类型qt(查询为/select)选择请求处理器RequestHandler,根据用户输入的参数…
转载请标明出处:http://blog.csdn.net/hu948162999/article/details/47727159 本文主要介绍了在短语.句子.多词查询中.solr在控制查询命中数量.之后再对结果集进行排序. 在solr中 默认是or 查询.也就是说:假设搜索q 中 分出来的词越多.所匹配的数量也就越多. 如:搜索短语  "中国联想笔记本" ,分词结果:中国 .联想 . 笔记本. 覆盖结果集:仅仅要文档中包括这3个随意词,都给返回. 排序结果:依照solr的打分公式.默…
Solr搜索技术 今日大纲 回顾上一天的内容: 倒排索引 lucene和solr的关系 lucene api的使用 CRUD 文档.字段.目录对象(类).索引写入器类.索引写入器配置类.IK分词器 查询解析器.查询对象(用户要查询的内容).索引搜索器(索引库的物理位置).排名文档集合(包含得分文档数组) 六种高级查询(相似度查询) 分词器(扩展词典.停用词典) 分页 得分(激励因子(作弊)) 高亮 排序 ●    Solr简介.运行 ●    Solr基本使用 ●    Solr Core 配置…
非票商品搜索,为了不模糊查询影响数据库的性能,搭建了solr搜索应用,php从solr读取数据…
问题:就是把从solr搜索出来的结果转成我们想要的实体类对象,很常用的情景. 1.使用@Field注解 @Field这个注解放到实体类的属性[字段]中,例如下面 public class User{ /** * id */ @Field private String id; /** * 用户名 */ @Field private String userName; /** * 密码 */ @Field private String password; } 关于获取SolrClient可以参考 sp…
spring data solr 搜索关键字高亮显示 public Map<String, Object> highSearch(Map searchMap) { Map map = new HashMap<>(); SimpleHighlightQuery query = new SimpleHighlightQuery(); HighlightOptions highlightOptions = new HighlightOptions().addField("ite…
1.   课程计划 1.搜索工程的搭建 2.linux下solr服务的搭建 3.Solrj使用测试 4.把数据库中的数据导入索引库 5.搜索功能的实现 2.   搜索工程搭建 要实现搜索功能,需要搭建solr服务.搜索服务工程.搜索系统(表现层的工程) 2.1. Solr服务搭建 2.1.1.    Solr的环境 Solr是java开发. solr的安装文件需要安装jdk. 安装环境Linux. 需要安装Tomcat. 2.1.2.    搭建步骤 第一步:把solr 的压缩包上传到Linux…
使用dbua升级时,须要手工设置CLUSTER_DATABASE參数么? 来源于: Is Manual Setting Of CLUSTER_DATABASE Parameter Required For DBUA Upgrade? (文档 ID 741081.1) 适用于: Oracle Server - Enterprise Edition - Version: 10.1.0.2 to 11.1.0.8 Information in this document applies to any…
这是来自知乎的一个问题,由@吴志强提出,有意思的是,他看了大家的回答后,突然顿悟了,同一时候也发现有人答错了,于是乎.他自己回答了自己的问题. 我看完后.发现他分析的非常精彩,于是就记录在这.以下是他的自答: ----------------------------------------------------------------------------- 看了之后,我获得了启示,突然认为这也许是跟条件变量的通经常使使用方法有关. 首先须要明确两点: wait()操作通常伴随着条件检測.如…
这一节基本数据类型參数和引用数据类型參数的传递过程. 数据类型參数和引用參数我们在前面章节中都已涉及到了,那么我们来看看以下的两段代码: //基本数据类型參数传递 class Demo { public static void main(String[] args) { int x = 3; change(x);//调用方法 System.out.println("x = " + x);// } public static void change(int x) { x = 4; } }…
Solr下载地址:http://www.apache.org/dyn/closer.lua/lucene/solr/6.3.0 Solr搭建步骤转自:http://blog.csdn.net/wbcg111/article/details/52809337 1.准备工作 目前最新版本6.2.1,下载Solr6.2.1下载 Java JDK8 下载并安装jdk1.8(solr6.*是基于JDK1.8开发的) tomcat8.0 下载并解压tomcat8 2.在jetty服务器下运行 solr解压之…
本例我们使用类库和代码均来自: http://www.cnblogs.com/TerryLiang/archive/2011/04/17/2018962.html 使用C#来模拟搜索.索引建立.删除.更新过程,Demo截图如下: 一.准备工作: 先准备一个实体类Product: public class Product { public string ID { get; set; } public string Name { get; set; } public String[] Feature…
安装过程: 原料:solr-4.10.3.tgz.tgz 1.1.1 安装步骤 单独一台虚拟机先全部删除:根目录:rm * -rf             cd /usr/local   \  rm solr* -rf 把tomcat拷贝到solr下: Mkdir /usr/local/solr     Cp tomcat /usr/local/solr/tomcat -r 需要把solr服务器安装到linux环境: 第一步:安装linux.jdk.tomcat. [root@bogon ~]#…
问题一:出现控制台坏的响应错误一Bad request 控制台出现错误如下: Bad Request request: http://hostIP:8983/solr/update?wt=javabin&version=1 解决方法: 出现以上错误的原因是,solr服务器上配置的Field和javabean提交的Field不能对应, 导致solr服务器找不到域,拒绝访问. 打开SOLR_HOME下的conf文件夹找到schema.xml文件,在其中添加对应的域. 例如以下代码添加了:title,…
一.搜索处理器简介 所有的请求处理器都实现一个Java类,本例实现了solr.SearchHandler.在运行时,solr.SearchHandler被解析为内置的Solr类org.apache.solr.handler.component.SearchHandler.一般来说,只要在solrconfig.xml文件中看到一个前缀为solr.的类,一般都是Solr的核心Java包之一.在配置文件中利用solr.前缀简写Solr类的名称,运行时再解析至相应的内置Solr类,这种方式让配置文件看起…
一.选择响应格式 XML是Solr的默认响应格式.从Solr的角度看,什么样的响应格式并不重要.Solr可以返回XML.JSON.Ruby.Python.PHP.二进制Java等,甚至是自定义格式.使用wt参数修改响应格式.Solr的wt参数的可用格式如下: 当需要更改Solr的响应格式时,需要在请求中将wt参数设置为你需要的类型.例如: 使用wt请求参数可以轻松地配置Solr的响应格式.如有需要,还可以为搜索应用编写专门的响应格式.为此,需要编写一个继承Solr的QueryResponseWr…
今天个人coding的模块测试,所以闲暇之余继续研究solr,然后顺带写了一个实例,随便搞的,solr真心不熟,期待认识热爱搜索的朋友,共同进步. 1.配置schema.xml文件[solr\collection1\conf\目录下] 因为schema默认定义了一些Field,我们这里选取[id,title,description, author]这几个属性,将id主键type配置为string,其它几个type配置为自定义的ik分词器 <field name="id" type…
在admin页面,输入相关内容后,会返回xml格式的内容.说明如下: [html] view plaincopy <?xml version="1.0" encoding="UTF-8"?> <response> <lst name="responseHeader"> <int name="status">0</int> <int name="QTim…
solr是一个基于lucene的搜索引擎,lucene是一个全文检索引擎的架构.solr在此之上进行了封装完善,变成了一个很流行实用的搜索引擎,可以应对绝大部分的搜索需求.使用搜索引擎有以下几点好处: 可以减少对数据库的压力,当数据量大或者查询频繁的的时候,频繁的使用查询对数据库资源消耗较大. 可以对搜索结果进行权重设置来排序 可以结合各种中文分词器,达到理想的搜索效果 例如ik,jecsg,solr本身对英文检索比较准确,但是对中文检索漏洞较多 solr可以依赖jetty容器,也可以依赖在to…
solr服务器配置好在搜索时经常会搜出无关内容,把不该分的词给分了,导致客户找不到自己需要的内容,那么我们就从配置词典入手解决这个问题. 首先需要知道自带的词典含义: 停止词:停止词是无功能意义的词,比如is   .a   .are  .”的”,“得”,“我” 等,这些词会在句子中多次出现却无意义,所以在分词的时候需要把这些词过滤掉. 扩展词库:就是不想让哪些词被分开,让他们分成一个词. 同义词:假设有一个电子商务系统,销售书籍,提供了一个搜索引擎,一天,市场部的人要求客户在搜索书籍时,同义词就…
在admin页面,输入相关内容后,会返回xml格式的内容.说明如下: <?xml version="1.0" encoding="UTF-8"?> <response> <lst name="responseHeader"> <int name="status">0</int> <int name="QTime">3</int&g…
今天个人coding的模块测试,所以闲暇之余继续研究solr,然后顺带写了一个实例,随便搞的,solr真心不熟,期待认识热爱搜索的朋友,共同进步. 1.配置schema.xml文件[solr\collection1\conf\目录下] 因为schema默认定义了一些Field,我们这里选取[id,title,description, author]这几个属性,将id主键type配置为string,其它几个type配置为自定义的ik分词器 <field name="id" type…
一.分面搜索 1. 什么是分面搜索? 分面搜索:在搜索结果的基础上进行按指定维度的统计,以展示搜索结果的另一面信息.类似于SQL语句的group by 分面搜索的示例: http://localhost:8983/solr/techproducts/browse 2. Solr中支持的分面查询 字段分面.区间分面.决策树分面.查询分面 2.1 字段分面 执行搜索时,根据查询请求返回特定分面字段中找到的唯一值以及找到的文档数. 通用查询参数: facet:true/false 对当前搜索是否启用分…
参考:http://blog.csdn.net/makang110/article/details/50971705 一:搭建solr服务器 1:安装jdk1.7,并配置环境变量 2:下载tomcat 7,并解压缩:本文解压缩到根目录下    /tomcat下 3:下载solr  4.13,并解压缩到 /solr目录下 4:复制/solr4.13/example/webapps下面的solr.war到 /tomcat7/webapps 下面, 5:启动tomcat,solr.war将会自动解压,…
solr搞了好久了,没啥进展,没啥大的突破,但是我真的尽力了! solr7可能是把默认搜索方式去掉了,如下: 在solr7里找了半天以及各种查资料也没发现这个默认搜索方式,后来想,可能是被edismax里的mm取代了吧,都是控制搜索精度的,如下: 这个mm还是挺解决问题的,但是对于我们公司来说就差那么一点,就一点.就这一点我没有解决.正常情况下这个参数能满足大部分需求.它有好多赋值的方式,具体自己参考:点击打开链接. 拿我做的举例:商品搜索. 我的主搜索是这样的:product_goods_na…
使用Solr搭建搜索引擎很容易,但是如何制定合理的打分规则(boost)做排序却是一个很头痛的事情.Solr本身的排序打分规则是继承自Lucene的文本相关度的打分即boost,这一套算法对于通用的提供全文检索的服务来讲,已经够用了,但是对于一些专门领域的搜索来讲,文本相关度的打分是不合适的. 如何来定制适合自身业务的排序打分规则(boost)呢?经过这段时间的思考与实践,想到了如下三个方法 1.定制Lucene的boost算法,加入自己希望的业务规则: 2.使用Solr的edismax实现的方…