lucene solr】的更多相关文章

官网上一般只提供最新版本的下载,下面两个链接为所有历史版本的下载地址: lucene地址:archive.apache.org/dist/lucene/java/ solr地址:archive.apache.org/dist/lucene/solr/ 在Solr1.4.x的时候,Solr和Lucene是独立发布的,Solr一般会在Lucene发布新版本后跟进发布一个新的版本. 到了3.1的时候,两者代码做了合并,版本号统一了,并同时发布.…
一.为何开博客写<Lucene/Solr搜索引擎开发笔记> 本人毕业于2011年,2011-2014的三年时间里,在深圳前50强企业工作,从事工业控制领域的机器视觉方向,主要使用语言为C/C++:现就职于一家大型国企所属电子商务公司,主要使用语言为Java,负责公司新一代搜索引擎的开发工作,故开此系列来总结自己在Lucene/Solr上的学习历程,同时,也希望能给予对搜索引擎开发有兴趣的朋友一些帮助和启发. 二.Lucene和Solr简要介绍 Lucene是apache软件基金会4 jakar…
一.安装环境 图1-1 Tomcat和Solr的版本 我本机目前使用的Java版本为JDK 1.8,因为Solr 4.9要求Java版本为1.7+,请注意. 二.Solr部署到Tomcat流程 图1-2 Tomcat安装目录 1.如图1-2所示,为Tomcat的解压目录: 图1-3 Tomcat首页 2.在目录E:\apache-tomcat-8.0.9\bin中,找到startup.bat文件,双击该文件,启动Tomcat服务器,等待几秒钟后,在浏览器中输入http://localhost:8…
1.开篇语2.概述3.渊源4.初识Solr5.Solr的安装6.Solr分词顺序7.Solr中文应用的一个实例8.Solr的检索运算符 [开篇语]按照惯例应该写一篇技术文章了,这次结合Lucene/Solr来分享一下开发经验. Lucene是一个使用Java语言写的全文检索开发包(API),利用它可以实现强大的检索功能,它的详细介绍大家可以去Google上搜索一下,本文重点放在Solr相关的讨论上. [概述]目前国内研究Solr的人不多,而且大多是因为项目开发需要.Solr师承Lucene,为…
1.什么是solr solr是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文检索服务器.Solr提供了比lucene风味丰富的查询语言,同时实现了可配置,可扩展,并对索引,搜索性能进行优化. Solr可以独立运行,运行在Jetty,Tomcat等这些Servlet容器中,solr索引的实现方法很简单,用POST方法享Solr服务器发送一个藐视Field及其内容的XML文档,Solr根据XML文档添加,删除,更新索引.Solr搜索只需要发送HTTP GET请求,然后…
全文检索(Lucene&Solr) 1)什么是全文检索?为什么需要全文检索? 结构化数据(mysql等)方便查询,而非结构化数据(如多篇文章)是难以查询到自己需要的,所以要使用全文检索. 全文检索:将非结构化数据的内容提取一部分,然后重新组织,使其有一定结构,然后就能以此快速的查找需要的信息,提取整理后的信息称之为索引. 应用:如淘宝,京东的搜索商品:百度的索引引擎. 2)原始文档:互联网上的网页,数据库中的数据,磁盘上的文件: 索引库:索引+原始文档: 语汇单元:一个term就是一个单元. 3…
2.1.开发环境准备 2.1.1.数据库jar包 我们这里可以尝试着从数据库中采集数据,因此需要连接数据库,我们一直用MySQL,所以这里需要MySQL的jar包 2.1.2.MyBatis的jar包(可选) 从数据库采集数据就需要查询数据库,我们可以用jdbc原生的写DAO,还可以使用我们之前学习过的MyBatis动态代理DAO,因此可能需要MyBatis的jar包 2.1.3.数据库环境 数据库脚本:[资料\数据库\book.sql],创建一个lucene数据库(utf-8),然后导入这个脚…
说明:由于solr底层使用的是lucene,因此修改solr打分机制归根结底还是依赖于lucene的打分机制,本文主要讨论lucene的打分机制. 本文说明lucene 常用的四种影响评分结果的方式. 1.document设置boost 2.Field设置boost 3.查询时设置boost 4.扩展Similarity实现. 一.document设置boost: 暂缺. 二.Field设置boost: 暂缺. 三.查询时设置boost: 暂缺. 四.扩展Similarity实现: 暂缺.…
理解 lucene 是一个全文搜索的引擎 solr是全文搜索的web实现 --------------------.  java.lang.UnsupportedClassVersionError: org/apache/solr/servlet/SolrDispatchFilter : Unsupported major.minor version 51.0 (unable to load class org.apache.solr.servlet.SolrDispatchFilter)报错,…
今天突然想到一个问题,觉得直接从Solr开始写,如果没有Lucene知识背景的话,看后续的章节还是比较吃力的,所以从下一篇博文开始,我可能会从Lucene开始写作,只要有Java的基础,搞定Lucene是没有问题的,笑~ 转载须知: 请尊重本人知识产权和劳动成果,本文可自由转载,请注明出处: 博客网址:http://www.cnblogs.com/zs8861/ 联系邮箱:117711668@qq.com 欢迎交流!…
1.索引库的维护 索引库删除 (1) 全删除 第一步:先对文档进行分析 public IndexWriter getIndexWriter() throws Exception { // 第一步:创建java工程,并导入jar包 // 第二步:创建一个indexwriter对象(创建索引) // 1.指定索引库的存放位置Directory对象 Directory directory = FSDirectory.open(Paths.get("E:\\temp\\index")); //…
全文检索引擎及工具 lucence lucence是一个全文检索引擎. lucence代码级别的使用步骤大致如下: 创建文档(org.apache.lucene.document.Document),并通过Document的add方法为其添加字段(lucence.document.Field) 创建lucence.index.IndexWriter,通过addDocument或addDocuments方法添加构建好的诸多Document 通过close方法关闭IndexWriter 创建索引搜索…
1.SolrCore的配置 a)schma.xml文件 b)配置中文分析器 2.配置业务域和批量索引导入 a)配置业务域 b)批量索引导入 c)Solrj复杂查询(用Query页面复杂查询.用程序实现) 3.京东案例(简单的站内搜索实现) 2.SolrCore的配置(重点) SolrCore的运行由两个重要的配置文件做指导,一个是solrconfig.xml,一个是schema.xml. 1)solrconfig.xml配置 依赖包.数据目录和请求处理器(/select,/update...)等…
2.信息检索 信息检索是计算机世界中非常重要的一种功能.信息检索不仅仅是指从数据库检索数据,还包括从文件.网页.邮件.用户手输入的内容中检索数据.通过怎样的高效方式将用户想要的信息快速提取出来,是计算机技术人员研究的重点方向之一. 2.1.数据分类 我们生活中的数据总体分为两种:结构化数据和非结构化数据. 结构化数据:指具有固定格式或有限长度的数据,如数据库,元数据等. 非结构化数据:指不定长或无固定格式的数据,如邮件,word文档等磁盘上的文件 2.2.结构化数据搜索方法 数据库就是最常见的结…
1.案例分析:什么是全文检索,如何实现全文检索 2.Lucene实现全文检索的流程 a)         创建索引 b)         查询索引 3.配置开发环境 4.创建索引库 5.查询索引库 6.分析器的分析过程 a)         测试分析器的分词效果 b)         第三方中文分析器 7.索引库的维护 a)         添加文档 b)         删除文档 c)         修改文档 8.Lucene的高级查询Lucene的查询 a)         使用Query…
Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引:也可以通过Http GSolret操作提出查找请求,并得到XML格式的返回结果: 学习资源: 1.Solr中国 http://www.solr.cc/blog/?paged=2 2. solr技术大牛的博客  http://blog.csdn.net/lgnlgn 对应视频地址:http://v.youku.com/v_sho…
1.什么是solrJ solrj是访问Solr服务的java客户端,提供索引和搜索的请求方法,SolrJ通常在嵌入在业务系统中,通过SolrJ的API接口操作Solr服务,如下图: 依赖jar包: 2.用solrJ对solr后台进行增删改查 2.1 添加文档 //向索引库中添加索引 @Test public void addDocument() throws Exception { //和solr服务器创建连接 //参数:solr服务器的地址 SolrServer solrServer = ne…
下图是语汇单元的生成过程: 从一个Reader字符流开始,创建基于Reader的Tokenizer分词器,经过三个TokenFilter生成语汇单元Tokens. 要看分词器的分析效果,只需要看Tokenstream中的内容就可以了.每个分词器都有一个方法tokenStream,返回一个tokenStream对象. 分词器的种类有很多,目前使用最广的分词器IK-analyzer,注意:Ik-analyzer的版本要与lucene版本相匹配才能使用,否则会报错. Analyzer使用时机 索引是使…
1. Lucene的下载 Lucene是开发全文检索功能的工具包,从官网下载Lucene4.10.3并解压. 官网:http://lucene.apache.org/ 版本:lucene7.7.0 (学习上没必要最新的,因为企业中也不会升级太快) Jdk要求:1.7以上 2.使用的jar包 核心包 其他:  3. 创建索引库 (1) 实现步骤 (程序的编写步骤与之前分析的理论步骤是颠倒过来的) 第一步:创建java工程,并导入jar包 第二步:创建一个indexwriter对象(创建索引) 1.…
1.Lucene基础 (1) 简介 Lucene是apache下的一个开放源代码的全文检索引擎工具包.提供完整的查询引擎和索引引擎:部分文本分析引擎. Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便在目标系统中实现全文检索的功能. (2) 应用场景 对于数据量大,数据结构不固定的数据可采用全文检索方式搜索,比如百度,Google等搜索引擎,论坛搜索,电商网站站内搜索等. 2. Lucene实现全文检索的流程 下面这张图足以说明索引的流程 (1) 绿色表示索引过程,对要搜索的原…
http://docs.spring.io/spring-data/solr/ 首先介绍一下solr: Apache Solr (读音: SOLer) 是一个开源.高性能.采用Java开发.基于Lucene的全文搜索服务器,文档通过Http利用XML加到一个搜索集合中,查询该集合也是通过 http收到一个XML/JSON响应来实现.Solr 中存储的资源是以 Document 为对象进行存储的.每个文档由一系列的 Field 构成,每个 Field 表示资源的一个属性.Solr 中的每个 Doc…
https://blog.csdn.net/belalds/article/details/82667692 开源搜索引擎分类 1.Lucene系搜索引擎,java开发,包括: Lucene Solr Elasticsearch Katta.Compass等都是基于Lucene封装. 你可以想象Lucene系有多强大. 2.Sphinx搜素引擎,c++开发,简单高性能. 以下重点介绍最常用的开源搜素引擎:Lucene.Solr.Elasticsearch.Sphinx的特点和优劣势选型比较. L…
本文转自http://chuanliang2007.spaces.live.com/blog/cns!E5B7AB2851A4C9D2!499.entry?wa=wsignin1.0 由于搜索引擎功能在门户社区中对提高用户体验有着重在门户社区中涉及大量需要搜索引擎的功能需求,目前在实现搜索引擎的方案上有集中方案可供选择: 1. 基于Lucene自己进行封装实现站内搜索.工作量及扩展性都较大,不采用. 2. 调用Google.Baidu的API实现站内搜索.同第三方搜索引擎绑定太死,无法满足后期业…
环境搭建 1.到apache下载solr,地址:http://mirrors.hust.edu.cn/apache/lucene/solr/ 2.解压到某个目录 3.cd into D:\Solr\solr-4.10.3\example 4.Execute the server by “java -jar startup.jar”Solr会自动运行在自带的Jetty上 5.访问http://localhost:8983/solr/#/ PS:solr-5.0 以上默认对schema的管理是使用m…
转载请注明出处:http://www.cnblogs.com/zhuxiaojie/p/5764680.html 本教程基于solr5.5 前言 至于为什么要用solr5.5,因为最新的6.10,没有中文的分词器支持,这里使用的是ik分词器,刚好支持到5.5 ik分词器下载地址 :https://github.com/EugenePig/ik-analyzer-solr5  , 下载完之后使用maven命令, mvn package 即可生成jar文件,或者下载我编译好的 http://pan.…
Solr 4.0 部署实例教程 Solr 4.0的入门基础教程,先说一点部署之后肯定会有人用solrj,solr 4.0好像添加了不少东西,其中CommonsHttpSolrServer这个类改名为HttpSolrServer,我是找了半天才发现,大家以后可以注意. 部署前准备: Solr 必须运行在Java1.5 或更高版本的Java 虚拟机中,运行标准Solr 服务只需要安装JRE 即可. Solr 4.0 :  http://www.apache.org/dyn/closer.cgi/lu…
接着前一篇,这里总结下Solr的安装与配置 1.准备 1.安装Java8 和 Tomcat9 ,java和tomcat 的安装这里不再重复.需要注意的是这两个的版本兼容问题.貌似java8 不支持,tomcat7 以下版本. 2.下载 solr安装包,目前的最新版本是  5.3.1 下载地址:http://www.apache.org/dyn/closer.lua/lucene/solr/5.3.1 2.安装 1.  将 solr 压缩包解压,并将solr-5.3.1\server\solr-w…
 一:Solr简介 Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引:也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果. Solr是一个高性能,采用Java5开发, Solr 基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一…
参考文章:http://www.freebuf.com/articles/database/100423.html 对上面链接的补充: solr-5.5.0版本已被删除,新url:http://mirrors.hust.edu.cn/apache/lucene/solr/5.5.3/ 下面是数据库的创建语句: DROP TABLE IF EXISTS `b41sgk`; CREATE TABLE `b41sgk` ( `id` bigint() NOT NULL AUTO_INCREMENT,…
1.将D:\software\lucene-3.6.0\apache-solr-3.5.0\example\solr下的文件拷贝到要作为服务器的位置(如:D:\lucene\solr\home),可以删除data目录下的数据,保留data文件夹:2.将D:\software\lucene-3.6.0\apache-solr-3.5.0\example\webapps中的solr.war程序也拷贝出来(D:\lucene\solr\server);,并解压solr.war 3.打开D:\lucen…