7.solr学习速成之facet】的更多相关文章

Facet 介绍   Facet 是 solr 的高级搜索功能之一 ,可以给用户提供更友好的搜索体验,在搜索关键字的同时 , 能够按照 Facet 的字段进行分组并统计.        比如你上淘宝,输入“笔记本”进行搜索,就会出现品牌分类,价格范围等分类,这个就叫facet了.这个例子也许不是那么准确的描述facet,不过基本上就是这个意思.对输入关键字后搜索出来的结果再进行分类.        solr有几种facet:        普通facet,比如从厂商品牌的维度建立fact .  …
Solr高亮显示的三种实现 高亮显示在搜索中使用的比较多,比较常用的有三种使用方式,如果要对某field做高亮显示,必须对该field设置stored=true .          第一种是普通的高亮显示Highlighter,根据查询的docIdSet,获取Documents,并获取当前document的需要高亮的field的value,根据query的term和该field的value做匹配算法.         第二种是,快速高亮显示FastVectorHighlighter,效率比普通…
Group与Facet的区别  facet的查询结果主要是分组信息:有什么分组,每个分组包括多少记录:但是分组中有哪些数据是不可知道的,只有进一步搜索.        group则类似于关系数据库的group by,可以用于一个或者几个字段去重.显示一个group的前几条记录等. 再细说点就是如果你想查询归查询聚类归聚类,那么使用facet,如果想使用类似采集的效果,每个group分组采集多少个,那么使用group查询. package com.liucheng.solr; import jav…
什么是Facet.pivot  Facet.pivot就是按照多个维度进行分组查询,是Facet的加强,在实际运用中经常用到,一个典型的例子就是商品目录树 NamedList解释: NamedList,一个有序的name/value容器,NamedList不像Map,他具有以下特点:       1.名字可以重复       2.NamedList中的element保持这有序状态       3.可以下标的形式访问Elements       4.name和value都可以为null packa…
什么是solr Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引:也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果 solr的特点 Solr是一个高性能,采用Java开发,Solr基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,…
1.下载解压solr-5.3.1.tgz [root@205 opt]# tar -zxf solr-5.3.1.tgz -C /opt/module/ 2.将solr-5.3.1/server/solr-webapp下的webapp文件夹拷贝到tomcat下的webapp下,并改名solr [root@205 solr-webapp]# cp -r webapp/* /opt/module/apache-tomcat-8.5.15/webapps/solr/ 3.拷贝扩展依赖的jar包  将s…
IKAnalyzer简介 IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包. IKAnalyzer特性 a. 算法采用“正向迭代最细粒度切分算法”,支持细粒度和最大词长两种分词方式,速度最大支持80W字/秒(1600KB/秒).   b. 支持多子处理器分析模式:中文.数字.字母,并兼容日文.韩文.  c. 较小的内存占用,优化词库占有空间,用户可自定义扩展词库.  d. 扩展lucene的扩展实现,采用歧义分析算法优化查询关键字的搜索排列组合,提高lucene检索…
solr除了利用solrj建立索引外,还可以由列式数据库hbase触发器添加索引,自动全量或者增量索引关系数据库数据等. dataimport可以配置从任何关系数据库导入索引 1.将jar包拷贝到tomcat/webapps/solr/web-inf/lib下面 mysql-connector-java-5.1.6.jarsolr-dataimporthandler-5.3.1.jarsolr-dataimporthandler-extras-5.3.1.jarsolr-dataimportsc…
Solr相似匹配    在网页搜索或电商产品搜索结果页面,很多时候会看到一个相似文档.相似产品或找相似的链接.Solr 使用 MoreLikeThisComponent(MLT)和 MoreLikeThisHandler 实现了一样的功能.如上所述,MLT 是与标准 SolrRequestHandler 集成在一起的:MoreLikeThisHandler 与 MLT 结合在一起,并添加了一些其他选项,但它要求发布一个单一的请求.我将着重讲述 MLT,因为使用它的可能性更大一些.    MLT…
查询关联多个core 再新建一个core 向每个core添加索引,修改 final static String SOLR_URL = "http://localhost:8080/solr/test"; 即可 多个core的关联查询 package com.liucheng.solr; import org.apache.solr.client.solrj.impl.HttpSolrClient; public class solrServer { private solrServer…
以bean的形式提交索引,以bean的形式查询出来 package com.liucheng.solr; import java.io.Serializable; import org.apache.solr.client.solrj.beans.Field; public class student implements Serializable{ private static final long serialVersionUID = 1L; @Field private String id…
solrserver.java public class solrServer { private solrServer(){}; final static String SOLR_URL = "http://localhost:8080/solr/test"; private static HttpSolrClient server = null; public static HttpSolrClient getServer(){ if(server == null){ server…
常用查询参数 q - 查询字符串,必须的.   fl - 指定返回那些字段内容,用逗号或空格分隔多个.  start - 返回第一条记录在完整找到结果中的偏移位置,0开始.   rows - 指定返回结果最多有多少条记录,配合start来实现分页.   sort - 排序,示例:(inStock desc, price asc)表示先 “inStock”降序, 再 “price”升序,默认是相关性降序.   wt - (writer type)指定输出格式,可以有 xml, json, php,…
上一篇,讲到了SolrNet的基本用法及CURD,这个算是SolrNet 的入门知识介绍吧,昨天写完之后,有朋友评论说,这些感觉都被写烂了.没错,这些基本的用法,在网上百度,资料肯定一大堆,有一些写的肯定比我的好,不过,这个是Solr系列文章,会从Solr的基础入门讲到实际开发中的分页,高亮,Facet查询等高级用法.所以,基础的入门也会涉及一些,望大家见谅.我用这么多篇文章,来总结Solr 也是为了将Solr 的 安装,配置,开发等等,整个过程的资料,都能总结汇集到一起,这样不管是懂Solr还…
上一篇已经讲到了Solr 查询的相关的参数.这里在讲讲C#是如何通过客户端请求和接受solr服务器的数据, 这里推荐使用SolrNet,主要是:SolrNet使用非常方便,而且用户众多,一直都在更新,感兴趣的可以加入他们的邮件群组,方便迅速了解SolrNet的最新动态. SorlNet源码地址:https://github.com/mausch/SolrNet SolrNet使用说明文档:https://github.com/mausch/SolrNet/tree/master/Document…
Solr学习笔记之5.Component(组件)与Handler(处理器)学习 一.搜索篇 拼写检查(spellCheck) 作用:用来检查用户输入的检索内容是否存在,如果不存在则给它提示出相近或相似的内容 配置:在solrconfig.xml中配置如下 <searchComponent name="spellcheck" class="solr.SpellCheckComponent"> <lst name="spellchecker&…
上一篇的配置说明主要是说明solrconfig.xml配置中的查询部分配置,在solr的功能中另外一个重要的功能是建索引,这是提供快速查询的核心. 按照Solr学习之一所述关于搜索引擎的原理中说明了建立索引,其实就需要经过分词组件处理,语言组件处理最后建立成一个倒排索引表, 通过这个索引表,来进行查询,本篇就是说明solr如何建立索引的也即是solrconfig.xml中关于更新索引的部分,另外由于建立索引需要涉及到 schemal.xml相关内容定义,这里面也一起说明. 一.设计schema…
目录 Solr学习记录:Getting started 1.Solr Tutorial 2. A Quick Overview Solr学习记录:Getting started 本教程使用环境:java8或者更高版本.Solr8.1.centos7 1.Solr Tutorial 1.1简介 本篇将用三个部分具体练习以引领对Solr的快速体验.每个练习将基于前一个练习. 第一个练习:启动solr,创建一个Collection,索引一些基础文档,执行一些搜索. 第二个练习:使用不同数据集,并尝试用…
solr学习笔记 1.安装前准备 solr依赖java 8 运行环境,所以我们先安装java.如果没有java环境无法启动solr服务,并且会看到如下提示: [root@localhost solr-6.1.0]# ./bin/solr start -e cloud -noprompt /*运行solr服务*/ Java not found, or an error was encountered when running java. A working Java 8 is required t…
Solr学习笔记之3.Solr导入SQLServer数据建立索引 一.下载MSSQLServer的JDBC驱动 下载:Microsoft JDBC Driver 4.0 for SQL Server 地址:http://www.microsoft.com/zh-CN/download/details.aspx?displaylang=en&id=11774 二.配置Solr dataimport for SQLServer 1.依赖jar包配置 将MSSQLServer的JDBC驱动中的sqlj…
Solr学习笔记之2.集成IK中文分词器 一.下载IK中文分词器 IK中文分词器 此文IK版本:IK Analyer 2012-FF hotfix 1 完整分发包 二.在Solr中集成IK中文分词器 1.将 IKAnalyzer.cfg.xml,IKAnalyzer2012FF_u1.jar,stopword.dic 拷贝到tomcat的/webapps/solr/WEB-INF/lib/下面 2.选择某一Solr的core配置IK分词,打开coreName/conf/schema.xml,在<…
Solr学习笔记之1.环境搭建 一.下载相关安装包 1.JDK 2.Tomcat 3.Solr 此文所用软件包版本如下: 操作系统:Win7 64位 JDK:jdk-7u25-windows-i586.exe Tomcat:apache-tomcat-8.0.3.exe Solr:solr-4.7.0.zip 注意:JDK 与 Tomcat 版本要对应,要么都是32位版本,要么都是64位版本,否则会报异常. 二.Solr安装 1.解压solr的zip安装包: 2.将dist文件夹中的solr-4…
Solr学习(二) Solr4.2.0+IK Analyzer 2012 开场白: 本章简单讲述如何在solr中配置著名的 IK Analyzer 分词器. 本章建立在 Solr学习(一)  基础上进行配置. 通过(一)的介绍,目前已经成功部署好单实例 solr+tomcat 声明:描述的比较笼统繁琐,有偏差的地方请大家毫不留情的拍砖 准备工作: 下载 “IK Analyzer 2012FF_hf1.zip”包. 详见:IK Analyzer中文分词器创始人 林良益 博客 名词解释: IK源目录…
Solr学习笔记之4.Solr配置文件简介 摘自<Solr in Action>. 1. solr.xml – Defines one or more cores per Solr server2. solrconfig.xml – Defines the main settings for a specific Solr core3. schema.xml – Defines the structure of your index including fields and field typ…
一 基本说明 简单来说Solr是基于Lucene的高性能的,开源的Java企业搜索服务器.Solr可以看作一个Web app,运行在tomcat或Jetty这类HTTP服务器上, 底层是一个基于Lucene的搜索引擎,还附加一个Solr的基本管理界面.Solr提供HTTP服务,通过Get方法进行查询,通过Post方法进行索引的添加/删除管理. 一般来说Solr的查询时通过Get方法请求到HTTP服务器的solr这个app下的/select对应的servlet上去,而添加等操作时通过POST方法到…
之前用Lucene进行了一些简单的例子,现在安装Solr学习一下. 在mac下,貌似可以直接brew install solr来进行安装.尝试一下. 貌似安装成功了: ==> Summary…
经过测试,同步MongoDB数据到Solr的时候,Solr版本为8.4.0会出现连接不上的错误,8.3.0未经测试不知,博主测试好用的一版为8.2.0,但是官网已经下不到了,所以我会把下载链接放在文末,需要的同学自取,不要再下8.3.0/8.4.0!!! 拖更了一个多月,忙于公司的新项目,期间接触到了一个新东西,那就是solr,什么是solr,我理解为全文检索,他能实现数据库的全文检索并实现高亮显示,相信你的脑海中已经浮现出了在淘宝类似的购物平台搜索商品时的样子,没错,solr跟他很类似,当我们…
今天还是不会涉及到.Net和数据库操作,主要还是总结Solr 的查询参数,还是那句话,只有先明白了solr的基础内容和查询语法,后续学习solr 的C#和数据库操作,都是水到渠成的事.这里先列出solr查询所需要的参数 wiki 地址:http://wiki.apache.org/solr/FrontPage, 里面有各个参数详细的介绍. 一.基本查询 q  查询的关键字,此参数最为重要,例如,q=id:1,默认为q=*:*, fl  指定返回哪些字段,用逗号或空格分隔,注意:字段区分大小写,例…
前面讲到了Solr的安装,按道理,这次应该讲讲.net与数据库的内容,C#如何操作Solr索引等.不过我还是想先讲一些基础的内容,比如solr查询参数如何使用,各个参数都代表什么意思? 还有solr 自带的web 管理系统如何使用等.只有先明白了solr的基本内容,后续学习solr 的C#和数据库操作,才不会费劲.本人刚开始也是配置完solr 之后,直接找solr客户端,写相应的测试代码,但是由于不知道一个Update请求具体都需要哪些参数,各个参数都是什么意思,以至于碰到各种solr 的基础问…
经过前面一段时间的努力,终于把我所知道的关于solr 的内容都总结完了.前面讲到了solr 的安装配置,web管理后台的使用,solr 的查询参数和查询语法,还说到了solr的客户端 solrnet 的基本用法和Query,Facet,高亮等实际开发中的常用方法.可以说solr的相关的基础的内容,都已经讲到了. 但是,总还是觉得,还少点什么,感觉还有很多没有总结到.比如分词,数据导入,索引增量更新,Solr服务器的主从复制等等.确实还有很多内容没有总结到位. 然而,细想之后,我又发现,对于Sol…