本文共 3422 字,大约阅读时间需要 11 分钟。
由于搜索引擎功能在门户社区中对提高用户体验有着重在门户社区中涉及大量需要搜索引擎的功能需求,目前在实现搜索引擎的方案上有几种方案可供选择:
Solr是一个基于Lucene的Java搜索引擎服务器。Solr 提供了层面搜索、命中醒目显示并且支持多种输出格式(包括 XML/XSLT 和 JSON 格式)。它易于安装和配置,而且附带了一个基于 HTTP 的管理界面。Solr已经在众多大型的网站中使用,较为成熟和稳定。Solr 包装并扩展了 Lucene,所以Solr的基本上沿用了Lucene的相关术语。更重要的是,Solr 创建的索引与 Lucene 搜索引擎库完全兼容。通过对Solr 进行适当的配置,某些情况下可能需要进行编码,Solr 可以阅读和使用构建到其他 Lucene 应用程序中的索引。此外,很多 Lucene 工具(如Nutch、 Luke)也可以使用Solr 创建的索引。
1.由于solr是java语言编写,需要JDK支持,先安装JDK8;
2.下载Solr,最新版本8.0.0 地址: (Windows版本箭头所示)
3.下载solr所需的IK分词器及mysql数据库连接jar和配置文件等资源文件,可用楼主自己收集的solr所需资源文件。
下载地址:
4.解压下载好的solr-8.0.0.zip,例如解压到桌面,目录结构如下:
5.运行Solr
Solr的运行分为单机运行和集群运行,一般项目单机版就够用,访问量大的项目需要集群版,集群版配置较复杂,可自行配置,这里为速度入门以单机为例:
5.1 在bin目录下执行bin/solr start 此命令会启动solr应用服务器默认端口为8983,如果想指定端口号启动可以加参数–p例 如:solr start –p 8888,如下图表示启动成功。
solr的相关命令 不加 -p 端口 默认8983:
5.2 启动solr服务器后,浏览器直接访问127.0.0.1:8983访问solr服务器后台。
安装完成。
先介绍下solr的使用流程:1、创建索引字段 2、添加索引数据 3、查询索引数据 4、更新索引数据
白话解释:现在solr服务器里什么数据都没有,首先你得和类似数据库先创建一些你要查询的字段,在solr里叫做“索引”,创建好了索引如“id”,"name","price",再往这些索引中添加一些数据,之后再查询这些数据,还可以对索引数据所更新。
本文主要以创建索引字段和添加索引数据为主要介绍,查询索引的内容可自行查找,因为查询数据中的复杂查询知识较多并包括solrj客户端的使用,篇幅有限,请见谅。
solr中一个核心(core)相当于一个搜索引擎,sole想要创建索引需要创建一个Core,可理解为数据的表。
创建Core有2种方法:
第一种:命令创建Core(推荐)
第二种:使用控制台创建core(如下图)
创建完core后可查看对应的目录结构
2.创建完core后,主角要登场了>>创建索引字段 (下图是自己core中配置索引的文件)
创建索引,solr自带很多默认类型,如pint,string,pflou等t等,但支持中文类型solr没有,需要自己先创建一个中文分词的类型,主流的使用IKAnalyzer分词器。
2.1 将分词器的两个jar(ik-analyzer-solr5-5.x.jar,solr-analyzer-ik-5.1.0.jar)放在\solr-8.0.0\server\solr-webapp\webapp\WEB-INF\lib目录下。
2.2在\solr-8.0.0\server\solr-webapp\webapp\WEB-INF\下创建classes文件夹,将ik分词器的三个配置文件放入里面(如图)
2.3将下面配置粘贴到自己的core文件夹下的conf下的managed-schema文件中。即可在索引字段使用此类型。
重启solr,可查看分词器是否成功配置(如图表示索引中可以使用text_ik的类型了)。
2.4可以创建我们需要的索引了,目标创建3个索引:id,name,price
查看自己core下的managed-schema文件,id是默认提供的,我们只需要创建name,和price即可。
创建索引有三种方式:
第一种:控制台添加索引(推荐),不用重启即可生效
第二种:直接在managed-schema配置文件中添加如下配置,后重启solr生效
第三种:用Solr - API提供的接口操作索引字段
API官网可查看:
索引字段创建完,就可以添加索引值了,添加索引值用多种方法,介绍2种简单方法。
3.1第一种,控制台直接添加数据。
查看数据,表示添加索引值成功,这种添加索引方法,就是测试用,没有实际意义。
3.2第二种:数据库导入数据(主流添加)
数据库导入数据,是通过查询数据库数据,直接添加到索引。
3.2.1添加数据库导入数据所需的三个jar文件,在solr-8.0.0下的dist目录下取出solr-dataimporthandler-8.0.0.jar,solr-dataimporthandler-extras-8.0.0.jar两个jar文件。
和上面“资源包“里的mysql-connector-java-5.1.7-bin.jar文件一起放入自己core下的lib目录中,没有lib文件夹自己创建,如图。
3.2.2创建数据库对应索引字段的配置文件 “资源包”中的data-config.xml。
3.2.3 数据库导入索引的配置文件data-config.xml,为了让Core识别,将如下配置添加到solrconfig.xml文件中,并将data-config.xml放在和solrconfig.xml同级目录下。
data-config.xml
添加效果
3.2.4重启solr让文件生效,访问Dataimport.
如果出现上面的样式,恭喜你,可以导入数据了,full-import:是导入所有数据,data-import:是导入索引中没有的数据
点击执行。
再次查询结果:恭喜你~~
(完)
转载地址:http://zhhgf.baihongyu.com/