SOLR - 技术教程文章
我与solr(六)--solr6.0配置中文分词器IK Analyzer【代码】【图】
转自:http://blog.csdn.net/linzhiqiang0316/article/details/51554217,表示感谢。 由于前面没有设置分词器,以至于查询的结果出入比较大,并且无法进行正确的高亮显示。现在配置一下分词器来解决相关问题。 solr6.0中进行中文分词器IK Analyzer的配置和solr低版本中最大不同点在于IK Analyzer中jar包的引用。一般的IK分词jar包都是不能用的,因为IK分词中传统的jar不支持solr6.0这个高版本的,所以就会发送运行错误的界面。下面...
solr查询
1.根据字段查询:http://www.360doc.com/content/14/0306/18/203871_358295621.shtml2.模糊查询:http://www.tuicool.com/articles/mYvm63原文:http://www.cnblogs.com/zrp2013/p/4463539.html
Solr基础理论【排名检索】
一.排名检索 搜索引擎代表了基于查询,返回优先文档的一种方法。在关系型数据库的SQL查询中,表的一行要么匹配一个查询,要么不匹配,查询结果基于一列或多列排序。搜索引擎根据文档与查询匹配的程度为文档打分,并按降序返回结果。匹配程度的计算取决于多个因素,一般而言,文档得分越高意味着该文档与查询的相关性越强。 优点: 1.提供清晰的导航方式,把用户越需要的放在越靠前的位置。 2.智能化程度高,用...
基于tomcat的solr环境搭建(Linux)【代码】【图】
?? solr是基于lucene的一个全文检索服务器,提供了一些类似webservice的API接口,用户可以通过http请求solr服务器,进行索引的建立和索引的搜索。索引建立的过程:用户提交的文本会经过分词器进行分词,分词后的关键字会存到索引库里,索引库是关键字和目标文档的映射集。索引搜索的过程:用户提交的搜索文本也是会经过分析器,得到的关键字会去索引库查询对应的目标文档并返回给客户端,采用的是权重排序算法。 1.solr的安装2.中...
Solr中schema.xml的Field介绍【代码】
Field详解 <field name="id" type="string" indexed="true" stored="true" multiValued="true"/>name: 指定域的名称(自定义)type: 指定域的类型indexed: 是否索引 是: (将分好的次进行索引,索引的目的,就是为了搜索) 否: 不索引,也就是不对该field域搜索。stored: 是否存储 是:将field中的内容存储到文档中。存储目的就是为了搜索显示取值用。 否:不将field域中的内容存储到文档中,并且搜索页面...
ElasticSearch(ES)和solr的关系和区别【图】
可以参考这篇文章:http://www.cnblogs.com/chowmin/articles/4629220.html Solr 2004年诞生(当时是Solar)。ElasticSearch 2010年诞生。ES更加新。 下面文字有误,其实是在不断动态添加。 综上所述,Solr的架构不适合实时搜索的应用。 Elasticsearch 与 Solr 的比较总结二者安装都很简单;Solr 利用 Zookeeper 进行分布式管理,而 Elasticsearch 自身带有分布式协调管理功能;Solr 支持更多格式的数据,而 Elasticsearch 仅支...
solr 7.7.0配置中文分词器的数据类型【代码】
1<dynamicField name="*_is" type="pints" indexed="true" stored="true"/> 2<dynamicField name="*_s" type="string" indexed="true" stored="true"/> 3<dynamicField name="*_ss" type="strings" indexed="true" stored="true"/> 4<dynamicField name="*_l" type="plong" indexed="true" stored="true"/> 5<dynamicField name="*_ls" type="plongs" indexed="true" stored="true"/> 6<dynamicField name="*_txt"...
solr 查询
solr 查询参数说明 常用 q - 查询字符串,必须的。 fl - 指定返回那些字段内容,用逗号或空格分隔多个。 start - 返回第一条记录在完整找到结果中的偏移位置,0开始,一般分页用。rows - 指定返回结果最多有多少条记录,配合start来实现分页。 sort - 排序,格式:sort=<field name>+<desc|asc>[,<field name>+<desc|asc>]… 。示例:(inStock desc, price asc)表示先 “inStock” 降序, 再 “price” 升序,默认是相关性降序。...
Solr搜索引擎入门知识汇总
1.技术选型,为什么用solr而不用lucene,或者其他检索工具lucene:需要开发者自己维护索引文件,在多机环境中备份同步索引文件很是麻烦Lucene本质上是搜索库,不是独立的应用程序。而Solr是。 Lucene专注于搜索底层的建设,而Solr专注于企业应用。 Lucene不负责支撑搜索服务所必须的管理,而Solr负责。 一句话概括Solr: Solr是Lucene面向企业搜索应用的扩展其实相识的技术还有ElasticSearch,但是ES只支持json文件格式,需要靠第三方插...
第二步solr配置中文分词IK Analyzer【代码】【图】
1、下载IK Analyzer 2012FF_hf1.zip解压如下图:注解(IK Analyzer 2012才能支持solr4.0以上的版本)下载地址:http://pan.baidu.com/s/1c0nMOhE650) this.width=650;" src="/upload/getfiles/default/2022/11/14/20221114115016278.jpg" title="QQ截图20150121150425.png" />2、添加IK Analyzer 2012 FF 中文分词:把IKAnalyzer2012_FF文件夹IKAnalyzer2012_FF.jar放在tomcat1.6,webapps\solr\WEB-INF\lib的目录下,修改E:\solr\...
solr 亿万级数据查询性能测试
废话不多说,我电脑配置 i7四核cpu 8G内存插入数据文档中有5个字段,其中有两个分词,一个int,一个date批量插入测试一次10万循环10次总共100万用时85秒批量插入测试一次10万循环100次总共1000万用时865秒插入性能还是不错的查询测试在12166454数据中(约等于一千两百万)总共占用硬盘2.8G查询分词字段 title:中国用时0.031秒非分词字段查询 view_count:1 用时 0.030秒范围查询 view_count:[0 TO 1000] 用时0.125秒上面这些查询第二...
solr特点五: MoreLikeThis(查找相似页面)【代码】
在 Google 上尝试一个查询,您会注意到每一个结果都包含一个 “相似页面” 链接,单击该链接,就会发布另一个搜索请求,查找出与起初结果类似的文档。Solr 使用MoreLikeThisComponent(MLT)和 MoreLikeThisHandler实现了一样的功能。如上所述,MLT 是与标准 SolrRequestHandler集成在一起的;MoreLikeThisHandler与 MLT 结合在一起,并添加了一些其他选项,但它要求发布一个单一的请求。我将着重讲述 MLT,因为使用它的可能性更大...
Solr实现SQL的查询语句【代码】
http://www.aboutyun.com/thread-7742-1-1.html//查询 http://localhost/order/select?q=item_main_title:澳洲&wt=json&indent=true&fl=id,order_number,src,src_orderhttp://localhost/order/select?q=*:*&wt=json&indent=true&fq=order_date:[1441555200000 TO *]SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd‘T‘HH:mm:ss‘Z‘"); String time = "lostTime:["+sdf.format(new Date())+" TO "+sdf.format(new Dat...
solr+采集程序合并搜索服务器
需求:1,从数据库中获取目标url,用爬虫程序获取页面标题正文,加入solr服务器;2,solr服务器提供前台做查询服务;3,solrj做客户端提交数据。note:曾考虑为什么用solr不用关系型数据库,大数据文本搜索以及分词,solr搜索效率比mysql更高。STEP:1 下载solr3.4.0:http://archive.apache.org/dist/lucene/solr/3.4.0/ 生产环境使用该版本(现最新版本5.3)STEP:2 http://blog.csdn.net/xiaoyu411502/article/details/44834...
JAVAEE——宜立方商城08:Zookeeper+SolrCloud集群搭建、搜索功能切换到集群版、Activemq消息队列搭建与使用【代码】【图】
1. 学习计划1、solr集群搭建2、使用solrj管理solr集群3、把搜索功能切换到集群版4、添加商品同步索引库。a) Activemqb) 发送消息c) 接收消息 2. 什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud。当一个系统的索引数据量少的时候是不需要使用SolrCloud的,当索引量很大,搜索请求并发很高,这时需要使用SolrCloud来满足这些需求。 SolrCloud是基于Sol...
solr添加中文IK分词器,以及配置自定义词库【图】
Solr是一个基于Lucene的Java搜索引擎服务器。Solr 提供了层面搜索、命中醒目显示并且支持多种输出格式(包括XML/XSLT 和 JSON 格式)。它易于安装和配置,而且附带了一个基于 HTTP 的管理界面。Solr已经在众多大型的网站中使用,较为成熟和稳定。Solr 包装并扩展了 Lucene,所以Solr的基本上沿用了Lucene的相关术语。更重要的是,Solr 创建的索引与 Lucene 搜索引擎库完全兼容。通过对Solr 进行适当的配置,某些情况下可能需要进行...
solr 服务器搭建(Linux版)
1.下载访问linux工具 securcrt 链接:https://pan.baidu.com/s/1zTwzmnzUmnwbKUCNHCLN1g 密码:kpyg2.下载所需的 jdk solr tomcat 链接:https://pan.baidu.com/s/1j32EHEh2peCntzLWBP54Ww 密码:mg4a3.使用securcrt 进入 linux 4.上传 jdk solr tomcat 到服务器根目录5.创建目录 sudo mkdir /usr/java6.移动jdk 到java 目录 sudo mv jdk-7u55-linux-i586.tar.gz /usr/java7.解压 jdk sudo tar -zxvf jdk-7u55-li...
Solr入门之(8)中文分词器配置【代码】【图】
Solr中虽然提供了一个中文分词器<SPAN style=‘font-family: "Times New Roman";‘>,但是效果很差 "Times New Roman";‘>,可以使用"Times New Roman";‘>IKAnalyzer或"Times New Roman";‘>Mmseg4j 或其他中文分词器。一、IKAnalyzer分词器配置: 1、下载<SPAN style=‘font-family: "Times New Roman";‘>IKAnalyzer(<SPAN style=‘font-family: "Times New Roman";‘>IKAnalyzer2012_u6)包<SPAN style=‘font-family: "...
solr scheme配置简介【代码】
solr 字段配置,和数据库数据索引配置 配置solr字段、 schema.xml 文件里配置 先讲解一下,里面的一些字段 1、 <types> ... </types> 表示类型,数据类型<fieldType name="string" class="solr.StrField" sortMissingLast="true" omitNorms="true"/> <fieldType name="boolean" class="solr.BoolField" sortMissingLast="true" omitNorms="true"/> <fieldtype name="binary" class="solr.BinaryField"/> <fieldType na...
【solr】solr5.0整合中文分词器【图】
1、solr自带的分词器远远满足不了中文分词的需求,经查使用最多的分词器是solr是mmseg4j分词器,具体整合大家可以参考https://github.com/zhuomingliang/mmseg4j一定要注意版本2、将这两个包直接拷贝到tomcat下的solr/lib中 3、在solr/java里新建dic目录将词库拷贝进去 4、直接在浏览器http://127.0.0.1:8080/solr即可如下分词结果 ok,分词整合完毕! 原文:http://www.cnblogs.com/gyjx2016/p/5925085.html
[solr]solr的安装【代码】【图】
solr是什么?翻译:SolrTM is the popular, blazing fast open source enterprise search platform from the Apache LuceneTM project. Its major features include powerful full-text search, hit highlighting, faceted search, near real-time indexing, dynamic clustering, database integration, rich document (e.g., Word, PDF) handling, and geospatial search. Solr is highly reliable, scalable and fault tole...
Solr和ES对比
Solr与ES(ElasticSearch)对比 搜索引擎选择: Elasticsearch与Solr搜索引擎选型调研文档Elasticsearch简介*Elasticsearch是一个实时的分布式搜索和分析引擎。它可以帮助你用前所未有的速度去处理大规模数据。它可以用于全文搜索,结构化搜索以及分析,当然你也可以将这三者进行组合。Elasticsearch是一个建立在全文搜索引擎 Apache Lucene? 基础上的搜索引擎,可以说Lucene是当今最先进,最高效的全功能开源搜索引擎框架。但是L...
Solr的函数查询(FunctionQuery)
作用通过函数查询让我们可以利用 numeric域的值或者与域相关的的某个特定的值的函数,来对文档进行评分。如何使用 这里主要有两种方法可以使用函数查询,这两种方法都是通过solr http 接口的: 1、内嵌在正常的solr查询表达式中。即,将函数查询写在 q这个参数中,这时候,我们使用_val_将函数与其他的查询加以区别。至于具体怎样使用,请读者留意下面的例子。 2、使用明确为函数查询的参数,比如说dismax中的bf(boost f...
solrcloud sample【代码】
在solrcloud出来之前,如果通过solrj连接solrserver,需要程序自己实现一致性hash.新版本的solr支持cloud的部署方式,可以自动实现lb和sharding的功能(通过CloudSolrServer类连接cloud),可以用下面代码做测试需要的jar包如下:apache-solr-solrj.jar apache-solr-core.jar zookeeper.jar commons-logging.jar apache-logging-log4j.jar httpclient.jar httpcore.jar slf4j-api.jar slf4j-nop.jarsample code:import java...
solr统计只返回10或者100个数据的解决办法【代码】
因为我所在的公司为政府做的项目【风险管理系统】,其中涉及大量的统计展示,多数以整个市的区划,行业部门等方式返回,在昨天,我发现听过填报单位的方式返回时,始终只有100个数据。通过对比发现,在前辈的代码中统计的存在一个巧合,就是全市的区划、行业部门钻取的方式都没有超过100,刚好我写的这个接口的填报单位有接近3w个单位。 在solr中不管是FacetPivotField还是FacetField。在统计中,最好加入 query.setFacetLim...
自己写的一个Solr搜索实例,增删改查+高亮+分页【代码】【图】
今天个人coding的模块测试,所以闲暇之余继续研究solr,然后顺带写了一个实例,随便搞的,solr真心不熟,期待认识热爱搜索的朋友,共同进步.1.配置schema.xml文件[solr\collection1\conf\目录下]因为schema默认定义了一些Field,我们这里选取[id,title,description, author]这几个属性,将id主键type配置为string,其它几个type配置为自定义的ik分词器<field name="id" type="string" indexed="true" stored="true" required="true" multiV...
Solr的一些查询参数【图】
fl: 是逗号分隔的列表,用来指定文档结果中应返回的 Field 集。默认为 “*”,指所有的字段。defType: 指定query parser,常用defType=lucene, defType=dismax, defType=edismaxq: query。q.alt: 当q字段为空时,用于设置缺省的query,通常设置q.alt为*:*。qf: query fields,指定solr从哪些field中搜索。pf: 用于指定一组field,当query完全匹配pf指定的某一个field时,来进行boost。简言之pf的作用是boosting phrases over words...
Solr随笔【代码】【图】
删除solr索引数据,使用XML有两种写法:1)<delete><id>1</id></delete> <commit/> 2)<delete><query>id:1</query></delete> <commit/> 删除所有索引,这样写就可以了:<delete><query>*:*</query></delete> <commit/> 注意:这个<commit/>节点不能少,否则删除动作的事务不会提交。 删除索引管理界面运行:原文:http://www.cnblogs.com/leejean/p/4982424.html
CentOS 6.5+Nutch 1.7+Solr 4.7+IK 2012【代码】【图】
环境Linux版本:CentOS 6.5JDK版本:JDK 1.7Nutch版本:Nutch 1.7Solr版本:Solr 4.7IK版本:IK-Analyzer 2012目录1.安装JDK2.安装Solr3.为Solr配置IK分词4.安装Nutch内容1.安装JDK1.1 在/usr/下创建java/目录,下载JDK包并解压[root@localhost ~]# mkdir /usr/java [root@localhost ~]# cd /usr/java [root@localhost ~]# curl -O http://download.oracle.com/otn-pub/java/jdk/7u75-b13/jdk-7u75-linux-x64.tar.gz [root@localh...
Solr中的概念:分析器(analyzer)、字符过滤器(character filter)、分词器(Tokenizer)、词元过滤器(Token Filter)、 词干化(Stemming)【代码】【图】
文本中包含许多文本处理步骤,比如:分词,大写转小写,词干化,同义词转化和许多的文本处理。 文本分析既用于索引时对一文本域的处理,也用于查询时查询字符串的文本处理。文本处理对搜索引擎的搜索结果有着重要的影响,特别是对如召回率的影响。 文本分析是将一个文本域的值转化为一个词序列。词是Lucene实际索引和搜索时的最小单元。分析作用于索引时原始的输入值,将转化后的词顺序保存到Lucene的索引结构中。文本分...