Solr简介
1. 企业站内搜索技术选型
在一些大型门户网站、电子商务网站等都需要站内搜索功能,使用传统的数据库查询方式实现搜索无法满足一些高级的搜索需求,比如:搜索速度要快、搜索结果按相关度排序、搜索内容格式不固定等,这里就需要使用全文检索技术实现搜索功能。
2. 使用solr的好处
基于 Solr 实现站内搜索扩展性较好并且可以减少程序员的工作量,因为 Solr 提供了较为完备的搜索引擎解决方案,因此在门户、论坛等系统中常用此方案。
3. 什么是 Solr
Solr 是 Apache 下的一个顶级开源项目,采用 Java 开发,它是基于 Lucene 的全文搜索服务器。 Solr 提供了比 Lucene 更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化
Solr 可以独立运行,运行在 Jetty、 Tomcat 等这些 Servlet 容器中, Solr 索引的实现方法很简单,用 POST 方法向 Solr 服务器发送一个描述 Field 及其内容的 XML 文档, Solr根据 xml 文档添加、删除、更新索引 。 Solr 搜索只需要发送 HTTP GET 请求,然后对 Solr返回 Xml、 json 等格式的查询结果进行解析,组织页面布局。 Solr 不提供构建 UI 的功能,Solr 提供了一个管理界面,通过管理界面可以查询 Solr 的配置和运行情况。solr 是基于 lucene 开发企业级搜索服务器,实际上就是封装了 lucene。Solr 是一个独立的企业级搜索应用服务器,它对外提供类似于 Web-service 的 API 接口。用户可以通过 http 请求,向搜索引擎服务器提交一定格式的文件,生成索引;也可以通过提出查找请求,并得到返回结果
Solr 类似 webservice,调用接口,实现增加,修改,删除,查询索引库。
4. Solr 与 Lucene 的区别
Lucene 是一个开放源代码的全文检索引擎工具包,它不是一个完整的全文检索引擎,Lucene 提供了完整的查询引擎和索引引擎,目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者以 Lucene 为基础构建全文检索引擎。Solr 的目标是打造一款企业级的搜索引擎系统,它是一个搜索引擎服务,可以独立运行,通过 Solr 可以非常快速的构建企业的搜索引擎,通过 Solr 也可以高效的完成站内搜索功能。Solr 类似 webservice,提供接口,调用接口,发送一些特点语句,实现增加,删除,修改。
Solr7.x 快速入门
从 Solr 官方网站(http://lucene.apache.org/solr/ )下载 Solr7.3.1
点击DOWNLOAD下载
最新版本下载
本文档只介绍Linux版本安装
安装Solr
导入solr安装包
a) 使用命令: rz命令
安装上传文件插件:yum -y install lrzsz
b) 使用工具导入: Xshell工具
a) 创建solr目录
[[email protected] local]# mkdir solr
b) 移动solr安装包到solr目录下
[[email protected] local]# mv /home/ccsp/solr-7.3.1.tgz solr/
c) 解压安装包
[[email protected] solr]# tar -zxvf solr-7.3.1.tgz
d) 导入Tomcat8(注:solr7.x 必须用Tomcat8和jdk1.8以上版本,这里没有用solr自带的Jerry运行solr应用)
a) 移动Tomcat8到solr服务,并解压
[[email protected] solr]# mv /home/ccsp/apache-tomcat-8.0.52.tar.gz .
[[email protected] solr]# tar -zxvf apache-tomcat-8.0.52.tar.gz
b) 更改Tomcat8名称以及端口号,并开放端口号
[[email protected] solr]# mv apache-tomcat-8.0.52 tomcat-solr
c) 拷贝solr到Tomcat服务器
拷贝solr解压包下面solr/server/solr-webapp/目录下的webapp文件夹,复制粘贴到Tomcat下的webapps下,并改名为solr
[[email protected] solr]# cp -r solr-7.3.1/server/solr-webapp/webapp/ tomcat-solr7/webapps/
drwxr-xr-x. 14 root root 4.0K 2018-06-11 11:08:15 docs
drwxr-xr-x. 6 root root 102 2018-06-11 11:08:15 examples
drwxr-xr-x. 5 root root 4.0K 2018-06-11 11:08:15 host-manager
drwxr-xr-x. 5 root root 4.0K 2018-06-11 11:08:15 manager
drwxr-xr-x. 3 root root 4.0K 2018-06-11 11:08:15 ROOT
drwxr-xr-x. 8 root root 4.0K 2018-06-11 11:31:52 webapp
[[email protected] webapps]# mv webapp solr
[[email protected] webapps]# ll
drwxr-xr-x. 14 root root 4.0K 2018-06-11 11:08:15 docs
drwxr-xr-x. 6 root root 102 2018-06-11 11:08:15 examples
drwxr-xr-x. 5 root root 4.0K 2018-06-11 11:08:15 host-manager
drwxr-xr-x. 5 root root 4.0K 2018-06-11 11:08:15 manager
drwxr-xr-x. 3 root root 4.0K 2018-06-11 11:08:15 ROOT
drwxr-xr-x. 8 root root 4.0K 2018-06-11 11:31:52 solr
d) 把solr-7.3.1\server\lib\ext目录下的所有jar包、和solr-7.3.1\dist下的solr-dataimporthandler-7.3.1.jar、solr-dataimporthandler-extras-7.3.1.jar粘贴复制到tomcat下的solr项目的WEB-INF/lib目录下
[[email protected] lib]# cp -r /usr/local/solr/solr-7.3.1/server/lib/ext/* .
[[email protected] lib]# cp -r /usr/local/solr/solr-7.3.1/dist/solr-dataimporthandler-* .
a) 把安装包下server目录下的solr文件夹粘贴复制到其他目录,然后重命名为: solrhome,这是solr核心文件夹
[[email protected] solr]# cp -r solr-7.3.1/server/solr .
[[email protected] solr]# ll
total 164M
-rw-rw-r--. 1 ccsp ccsp 9.0M 2018-06-11 11:05:18 apache-tomcat-8.0.52.tar.gz
drwxr-xr-x. 3 root root 89 2018-06-11 11:46:13 solr
drwxr-xr-x. 9 root root 4.0K 2018-06-11 11:01:45 solr-7.3.1
-rw-rw-r--. 1 ccsp ccsp 155M 2018-06-11 10:10:47 solr-7.3.1.tgz
drwxr-xr-x. 9 root root 4.0K 2018-06-11 11:08:15 tomcat-solr7
[[email protected] solr]# mv solr solrhome
b) 修改tomcat下的solr项目的WEB-INF/web.xml,这一步用来指定默认的solrhome。在web.xml开头附近找到:
修改后为:
m) 在tomcat下的solr项目的WEB-INF下新建classes目录,然后把solr- 7.3.1\server\resources下的log4j.properties粘贴过去
[[email protected] WEB-INF]# mkdir class
[[email protected] class]# cp -r /usr/local/solr/solr-7.3.1/server/resources/log4j.properties .
a) solr/server/lin下metrics开头的5个jar拷到tomcat\webapps\solr\WEB-INF\lib下
[[email protected] lib]# cp -r /usr/local/solr/solr-7.3.1/server/lib/metrics-* .
a) 去掉权限,tomcat solr下的web.xml 注意最后一段话,注释下面这一段
a) 启动Tomcat服务器,在浏览器输入http:ip:端口号/solr/index.html,回车出现如下界面即为成功
后台启动界面:
前端页面展示:
q) 点击logging查看日志没有报错说明启动正常
原文地址:https://www.cnblogs.com/Ibelieving/p/9199334.html