一、内容安排
二、 Solr 介绍
背景
什么是solr
Solr与Lucene的区别:
三、Solr安装及配置
Solr的下载
Solr的文件夹结构(将solr-7.1.0.zip解压):
运行环境:
solr 需要运行在一个 Servlet 容器中,Solr7.1.0要求jdk使用1.8以上, tomcat8.0以上,Solr默提 供Jetty(java写的Servlet容器),本教程使用Tocmat作为Servlet容器,环境如下:Solr:Solr7.1.0 Jdk:jdk1.8._131 tomcat :apache-tomcat-8.5
四、Solr整合tomcat
Solr Home与SolrCore
创建一个Solr home目录,SolrHome是Solr运行的主目录,目录中包括了运行Solr实例所有的配置文件 和数据文件,Solr实例就是SolrCore,一个SolrHome可以包括多个SolrCore(Solr实例),每个SolrCore 提供单独的搜索和索引服务。serversolr是一个solr home目录结构,如下:
上图中“configsets里面的sample_techproducts_configs”是一个SolrCore(Solr实例)目录,不过缺少一个core.properties, 可以手动创建一个, 也可以从目录solr-7.1.0/example/example-DIH /solr/solr 中复制内容如下所示:
solr-7.1.0/example/example-DIH/solr/solr 这个目录也是一个 soleCore 目录,也可以用这个来代 替上面的configsets
说明:
solrHome中可以创建多个solr运行实例SolrCore。相当于我们的每个数据本身
一个solr的运行实例对应一个索引目录。
conf是SolrCore的配置 文件目录 。
data目录存放索引文件需要创建, 需要手动创建
整合步骤
把/solr-7.1.0/server/solr-webapp/webapp 重命名为 solr复制到tomcat的webapps下,重命名不是必须的,只是为了好区分
在 solr7.1中有两个位置可以找到 solrCore, 但是每个都缺少一个文件,文件都在另外一个中, 分别是solr-7.1.0exampleexample-DIHsolr/solr和solr-7.1.0serversolr
1)将/solr-7.1.0/server下的 solr复制到/ usr/local 下 并重命名为 solrhome, 重命名不是必须的,只是为了好分辨,因为内部的 configsets 中的core 缺少一个文件,所以删除configsets目录,另行拷贝 core
2)复制 solrcore把solr-7.1.0/example/example-DIH/solr/solr文件夹复制到/usr/local/solrhome路径下, 并重命名为collection1(并非必须),并编辑内部的 core.properties ,添加 name=collection1; collection1属于任意内容,可以自行修改,在 solrhome 内部创建一个 lib 目录,然后将/solr-7.1.0/dist 下的 solr-dataimport 开头的两个依赖包复制进去
3)一个solrcore相当于mysql中一个数据库。Solrcore之间是相互隔离。注意core 里面得有 core.properties 文件,core.properties中的内容name不可重复,如果需要多个core,可以将collection1这个目录复制粘贴一份,并修改里面的core.properties中的内容即可