hello Solr大爷!
Posted 大浪自逍遥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hello Solr大爷!相关的知识,希望对你有一定的参考价值。
一、Solr介绍
1 全文检索
什么叫全文检索呢?这要从我们生活中的数据说起。
我们生活中的数据总体分为两种:结构化数据和非结构化数据。
(1)结构化数据:只具有固定格式和有限长度的数据,如数据库、元数据等。
(2)非结构化数据:指不定长度或无固定格式的数据,如邮件,word文档等。
非结构化数据有一种叫法叫全文数据。
按照数据的分类,搜索也分为两种:
(1)对结构化数据的搜索:如对数据库的搜索,用SQL语句。
(2)对非结构化数据的搜索:如利用windows的搜索也可以搜索文件内容,linux下的grep命令,再如Google和百度可以搜索大量内容数据。
2 Lucene
Lucene是一个高效的,基于java的全文检索库。
Lucene是apache软件基金会4 jakarta 项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,但他不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便在目标系统中实现全文检索的功能,或是以此为基础建立起完整的全文检索引擎。Lucene是一套用于全文检索和搜寻的开源程序库,由apache软件基金会提供。Lucene提供了一个简单却强大的应用程序接口,能做全文索引和搜寻,在java开发环境里Lucene是一个成熟的免费开源工具,就其本身而言,Lucene是当前以及最近几年最受欢迎的免费java信息检索程序库。
3 Solr 简介
Solr是基于Lucene的面向企业搜索web应用
Solr是一个独立的企业搜索应用服务器,它对外提供类似于Web-service的API接口,用户可以通过http请求,向搜索引擎服务器提交一定格式的xml文件,生成索引;也可以通过Http Get操作提出查找请求,并得到xml/json格式的返回结果。
Solr是一个高性能,采用java5开发,基于Lucene全文检索服务器,同时对其进行扩展,提供了必Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并提供了一个完善的功能管理界面,是一款非常优秀的全文检索引擎。
文档通过Http利用xml加到一个搜索集合中,查询集合也是通过Http收到一个xml/json响应来实现。它的主要特性包括:高效、灵活的缓存功能,垂直搜索功能,高亮显示搜索结果,通过索引复制来提高可用性,提供一套强大Data Schema 来定义字段、类型和设置文本分析,提供基于web的管理界面等。
二、Solr单击版安装
1 安装环境
1.1 安装jdk
1.1.1 jdk版本
jdk-8u11-linux-x64.tar.gz
1.1.2 环境变量配置
export JAVA_HOME=/usr/local/jdk exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$JAVA_HOME/bin:$PATH |
1.2 安装tomcat
1.2.1tomcat版本
apache-tomcat-7.0.47.tar.gz
2 安装 Solr
Solr版本:solr-4.10.3.tgz
2.1 Solr由两个部分构成
(1) Solr的web服务
(2)Solr的索引库
2.2 Solr的目录介绍
bin:启动solr的一些脚本,但是需要依赖jeety容器
contrib:存放的是solr对第三方插件支持的内容
dist:solr编译后所产生一些文件夹。War或者是jar
example:是solr的案例。在该目录下有两个文件夹对于我们来说比较重要。
1) webapps:在该目录中存放了一个solr的war包。与dist目录下的那个war文件是同一个,只是存放的目录及名称不同而已。
2) solr: 是solr的一个标准的索引库示例。
3) lib/ext:该目录下存放的是一些日志处理器的jar包。Solr的web服务也要依赖于日志处理的jar包。所以我们在安装solr服务时,需要将该目录下的jar拷贝给solr服务
2.3 安装Solr服务
其实安装solr服务就是将solr的war包,拷贝到tomcat的wabapps目录下。
2.4 启动tomcat,解压war包
查看tomcat的启动日志,查看是否做war的解压
tailf logs/catalina.out
2.5 添加服务中所依赖的jar包
由于我们在解压后的solr的项目中,需要依赖一些日志处理的jar包。所以我们在添加依赖的jar包时,需要将原来的war删除掉。否则tomcat再次启动时,会将原来的目录覆盖掉。那么新添加的jar包也就没了。注意:在删除war包时,一定要在tomcat关闭的状态下删除war包。如果在tomcat启动状态下删除war包,那么tomcat在关闭时会将解压的目录一并的也删除掉。
2.6 安装Solr索引库
在solr的解压目录的example目录下有个solr的目录,就是solr的一个基本的索引库示例
2.7 拷贝索引库
将该索引库拷贝到指定目录下(可以是任意目录),虽然具备任意性。但是也不能太随便。应该放到/usr/local/solrhome。先创建solrhome目录
2.8 solr的服务中配置索引库
在solr的服务中配置索引库的位置注意:需要配置的路径为索引库的根。可以使用linux中的pwd命令查看绝对路径。将该路径添加到solr服务中的web.xml文件中Solr服务在启动时,是通过他的web.xml文件中的节点配置获取索引库的绝对位置的。vim web.xml在web.xml中找到<env-entry>.注意:该节点默认是注释状态的,我们需要先去掉注释。然后将拷贝的索引库的路径添加到该节点的<env-entry-value>节点中
2.9 访问solr服务
启动tomcat通过solr的管理页面可以对solr进行操作了。启动tomcat后,打开浏览器输入solr的访问url就可以访问solr服务了
以上是关于hello Solr大爷!的主要内容,如果未能解决你的问题,请参考以下文章
还看不懂Python OpenCV?不,我不允许!隔壁大爷都说看得懂!❤️环境配置+问题分析+视频图像入门❤️万字只为你~