2018年8月份学习使用solr,当时下载的版本是solr7.5,写这篇博文的时候是2019年3月份,solr此时已经出到了8.0版本。一个大版本的变迁确定有不少的改动,暂时还未研究就不赘述了。web
此篇博客只是记述一下当时对solr的使用方面研究。shell
solr下载地址:http://www.apache.org/dyn/closer.lua/lucene/solr/8.0.0数据库
1、Luceneapache
在了解solr以前,先了解一下Lucene,Lucene是一个全文检索的工具包,本质上是一个jar包,它没法单独在web容器中运行,可是你能够把它导入到某个项目里进行开发使用。固然如今solr已经帮你整好了,不建议这么用。浏览器
Lucene进行全文检索的结构图以下服务器
1)采集数据app
从不一样的源进行数据收集,例如数据库,web端等。框架
数据库:其余系统存储在数据库中的数据webapp
web端:直接从web端录入的数据工具
2)建立索引
数据采集完成后,Lucene会将采集到的全部数据建立索引,并将索引存储在索引库中
3)用户查询
用户在web端,输入索引关键词,SearchIndex会根据关键词在索引库中进行索引查找
4)返回结果
SearchIndex查找到结果后返回给用户
2、solr
solr是创建在Lucene基础上的一个项目包,它能够在Tomcat等web容器中直接运行,同时提供全文检索服务。
可是,solr7.5是能够直接运行的,不须要再像某个版本(我也不知道哪一个版本)以前须要将solr打包发布到Tomcat才能运行使用。
1.solr下载
solr下载地址:http://www.apache.org/dyn/closer.lua/lucene/solr/
2.solr包功能介绍
下载solr包后解压,包内目录以及各自功能以下:
solr和solr.cmd:分别用于Linux和Windows系统,根据所选参数不一样而控制Solr的启动和中止
post:提供了一个用于发布内容的命令行接口工具。支持导入JSON,XML和CSV,也能够导入HTML,PDF,Microsoft Office格式(如MS Word),纯文本等等。
solr.in.sh和solr.in.cmd:分别用于Linux和Windows系统的属性文件
install_solr_services.sh:用于Linux系统将Solr做为服务安装
analysis-extras: 包含一些文本分析组件及其依赖
clustering:包含一个用于集群搜索结果的引擎
dataimporthandler:把数据从数据库或其它数据源导入到solr
extraction:整合了Apache Tika,Tika是用于解析一些富文本(诸如Word,PDF)的框架
langid:检测将要索引的数据的语言
map-reduce:包含一些工具用于Solr和Hadoop Map Reduce协同工做
morphlines-core:包含Kite Morphlines,它用于构建、改变基于Hadoop进行ETL(extract、transfer、load)的流式处理程序
uima:包含用于整合Apache UIMA(文本元数据提取的框架)类库
velocity:包含基于Velocity模板的简单的搜索UI框架
exampledocs:这是一系列简单的CSV,XML和JSON文件,能够bin/post在首次使用Solr时使用
example-DIH:此目录包含一些DataImport Handler(DIH)示例,可帮助您开始在数据库,电子邮件服务器甚至Atom订阅源中导入结构化内容。每一个示例将索引不一样的数据集
files:该files目录为您可能在本地存储的文档(例如Word或PDF)提供基本的搜索UI
films:该films目录包含一组关于电影的强大数据,包括三种格式:CSV,XML和JSON
contexts:这个文件包含了solr Web应用程序的Jetty Web应用的部署的配置文件
etc:主要就是一些Jetty的配置文件和示例SSL密钥库
lib:Jetty和其余第三方的jar包
logs:Solr的日志文件
resources:Jetty-logging和log4j的属性配置文件
solr:新建的core或Collection的默认保存目录,里面必需要包含solr.xml文件
configsets:包含solr的配置文件
solr-webapp:包含solr服务器使用的文件;不要在此目录中编辑文件(solr不是JavaWeb应用程序)
3.solr启动
打开solr的bin目录,shift+鼠标右键,“在此处打开powershell窗口”
输入.\solr start
成功启动后,在浏览器中访问以下地址:
http://localhost:8983
4.solr具体参数配置
讲道理,有点多,参照下面这个博客便可。
https://blog.csdn.net/bskfnvjtlyzmv867/article/details/80940089