Solr

Posted cainame

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Solr相关的知识,希望对你有一定的参考价值。

1.1 Solr是什么

Solr是一个基于全文检索的企业级应用服务器。可以输入一段文字,通过分词检索数据。它是单独的服务,部署在 tomcat。

1.2 为什么需要Solr

问题:我们已经学过Lucene,为什么还要学习solr?

Lucene是一个工具包,不能单独运行,需要导入到java代码中。Solr可以独立运行在tomcat容器中,通过http协议,以接口的方式对外提供服务,java代码只需要专注于业务的处理就可以。

1.3 Solr目录结构说明

技术图片

 

 bin:solr的运行脚本

 contrib:solr的一些扩展jar包,用于增强solr的功能

 dist:该目录包含build过程中产生的jar文件,以及相关的依赖文件

 example:solr工程的例子目录

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

2 入门示例

2.1 需求

将数据库的数据导入 solr 中,实现查询功能

2.2 配置步骤

2.2.1 启动 solr

进入 solr 解压路径下的 bin 目录,按 shift + 鼠标右键,选择在此次打开命令行工具

输入命令: .solr start 启动 solr 服务

技术图片

 

使用浏览器访问 localhost:8983 即可进入后台控制页面。

2.2.2 配置 solr core

继续使用命令工具创建一个 core,core 就相当于一个 solr 的项目实例。

命令:solr create -c <core_name>

成功创建后,可以在 solr-8.2.0/server/solr/<core_name> 目录下看到自动生成的默认配置文件

创建完成后,重新进入后台控制页面,可以查看到新建的 core

2.2.3 创建java程序访问solr服务器

步骤说明:

   1.采集数据

   2.将数据转换成Solr文档

   3.连接solr服务器,将文档写入索引库

2.2.3.1 创建项目,导入 jar 包

需要导入的包有:

     Solrj 核心包:solr-8.2.0distsolr-core-8.2.0.jar

     Solrj 依赖包:solr-8.2.0distsolrj-lib 目录下的所有包

     JDBC 驱动包:根据数据库版本而定,我这里拷的是 mysql 8 的驱动包

 

以上是关于Solr的主要内容,如果未能解决你的问题,请参考以下文章

在 solr 3.4 中放置突出显示片段配置的位置

Solr 高亮是不是还可以指示返回的片段在原始字段中的位置或偏移量?

Solr Highlighting:如何为同一字段请求多个片段长度?

Hue, Solr - 搜索词的自动填充

如何使用SOLRJ java客户端从SOLR获取列名(字段)?

solr admin界面的监控