Solr

简介: Solr是一个全文检索服务器

Solr

一、是什么?

Solr是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。

二、可以做什么?

Solr是一个全文检索服务器,只需要进行配置就可以实现全文检索服务。Solr可以独立运行。

三、怎么做?

1、安装

1.1 安装jdk

要求jdk8以上

1.2 安装tomcat

solr5以后solr内部集成jetty服务器,可以通过bin目录中脚本直接启动

1.3 下载及解压solr安装包

从Solr官方网站(http://lucene.apache.org/solr/ )下载对应版本的solr,Linux下载tar,windows下载zip。

将zip解压,得到以下的文件夹;

bin:solr的运行脚本

contrib:solr的一些贡献软件/插件,用于增强solr的功能。

dist:包含build过程中产生的war和jar文件,以及相关的依赖文件。

docs:solr的API文档

example:solr工程的例子目录:

licenses:solr相关的一些许可信息

1.4 启动solr

cmd进入bin目录执行 solr start命令,默认端口8983

1.5 使用solr管理界面

通过访问http://localhost:8983/solr进入solr管理界面。

1.5.1 创建solr core

Core代表一个索引库、里面包含索引数据及其配置信息,比如mysql可以新建多个数据库,solr可以新建多个core

通过管理界面新建core

界面上新建会提示如下错误

解决方案:将\solr-8.9.0\server\solr\configsets\_default中的conf复制到新的core文件夹中

通过界面新建core成功

通过命令行新建core

通过命令行新建不会报错,无需复制默认的配置文件到新的core文件夹下

1.5.2 导入数据

新建一个数据库表

在表中插入数据

1.5.3 配置数据源

在/solr-8.9.0/server/solr/test5/conf新建数据源配置文件,其中test5为新建的core名称

1.5.4 配置schema

修改/solr-8.9.0/server/solr/test5/conf/managed-schema.xml文件

schema决定solr如何建立索引,每个字段的数据类型,分词方式。

fieldType:为field定义类型,最主要作用是定义分词器,分词器决定如何从文档中检索关键字。

analyzer:fieldType下的子元素,分词器。

filed:创建索引用的字段,如果想要这个字段生成索引需要配置他的indexed属性为true,stored属性为true表示存储该索引。

1.5.5 配置数据导入处理器

修改/solr-8.9.0/server/solr/test5/conf/solrconfig.xml文件

1.5.6 导入jar包

下载jar文件放入solr-8.9.0/server/solr-webapp/webapp/WEB-INF/lib

重启solr

./solr restart -p 8333

1.5.7 solr管理界面配置dataimport

点击执行可以查询配置结果

1.5.8 通过solr查询数据

可以查询出数据库中的数据,表示配置成功

1.5.9 配置分词器

未配置分词器之前的效果

下载ik分词器jar,地址https://github.com/magese/ik-analyzer-solr

将jar包放入/solr-8.9.0/server/solr-webapp/webapp/WEB-INF/lib

解压jar,获取jar中的配置文件放入/solr-8.9.0/server/solr-webapp/webapp/WEB-INF/classes,没有文件夹就新建

配置managed-schema.xml,加入分词器配置,并修改搜索字段类型为ik_word

配置完分词器的效果

查询效果







相关文章
|
1天前
|
搜索推荐 Java 应用服务中间件
【solr】安装和使用
【solr】安装和使用
7 1
|
6月前
|
Oracle 关系型数据库 MySQL
25对Solr的思考
25对Solr的思考
22 0
|
XML JSON 搜索推荐
和 Solr 对比|学习笔记
快速学习和 Solr 对比。
79 0
|
XML 存储 JSON
和 Solr 对比 | 学习笔记
快速学习和 Solr 对比
83 0
|
关系型数据库 Java 应用服务中间件
solr7安装(1)
安装和配置solr
3192 0
|
Java Perl 自然语言处理
|
自然语言处理 Java Apache
|
搜索推荐 Java UED
|
Java 应用服务中间件 关系型数据库
|
应用服务中间件 Java