当前位置:首页 > 后端开发 > 安装solr + IK分词器

安装solr + IK分词器

6个月前 (05-25)60

技术概述,描述这个技术是做什么

在我们开发一个搜索功能的时候,如果采用SQL 语句来查找 数据,需要使用 like % + 字符 + % 的情况下,会导致索引失效
会导致索引失效,所以推荐使用搜索引擎来实现相关的功能。
Solr作为一个外国开发的搜索引擎,自带的分词器无法对中文进行分词,所以需要安装IK分词器进行配合使用

实现过程

1.docker 拉取solr镜像

docker pull solr

2.创建并运行的solr容器

docker run --name solr -d -p 8983:8983 solr

3.防火墙放行相关端口

firewall-cmd --zone=public  --add-port=8983/tcp --permanent
firewall-cmd --reload

4.创建核心
在浏览器输入主机号:端口号会出现一下页面

安装solr + IK分词器 _ Java侠

安装solr + IK分词器 _ Java侠

会出现
安装solr + IK分词器 _ Java侠

进入solr容器

安装solr + IK分词器 _ Java侠

复制配置文件到core文件夹
安装solr + IK分词器 _ Java侠

安装solr + IK分词器 _ Java侠

出现这个说明成功

安装solr + IK分词器 _ Java侠

5.安装IK分词器

到下方地址下载IK分词器的资源

https://github.com/magese/ik-analyzer-solr

用root身份进入容器


docker exec -it --user=root solr /bin/bash

在容器内安装vim


apt-get  update
apt-get install vim

进入下面文件夹
cd /opt/solr-x.x.0/server/solr-webapp/webapp/WEB-INF
创建文件夹(classes)
mkdir classes
退出容器:

将jar包放入Solr服务Tomcat的webapp/WEB-INF/lib/目录下
将resources目录下的5个配置文件放入solr服务Tomcat的webapp/WEB-INF/classes/目录下

  • IKAnalyzer.cfg.xml
  • ext.dic
  • stopword.dic
  • ik.conf
  • dynamicdic.txt
docker cp IKAnalyzer.cfg.xml solr:/opt/solr-x.x.0/server/solr-webapp/webapp/WEB-INF/classes/
docker cp ext.dic solr:/opt/solr-x.x.0/server/solr-webapp/webapp/WEB-INF/classes/
docker cp stopword.dic solr:/opt/solr-x.x.0/server/solr-webapp/webapp/WEB-INF/classes/
docker cp ik.conf solr:/opt/solr-x.x.0/server/solr-webapp/webapp/WEB-INF/classes/
docker cp dynamicdic.txt solr:/opt/solr-x.x.0/server/solr-webapp/webapp/WEB-INF/classes/

修改managed-schema

docker exec -it  solr /bin/bash
cd /var/solr/data/核心/conf
vim managed-schema 

添加ik分词器,示例如下;

<!-- ik分词器 -->
<fieldType name="text_ik" class="solr.TextField">
  <analyzer type="index">
      <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" conf="ik.conf"/>
      <filter class="solr.LowerCaseFilterFactory"/>
  </analyzer>
  <analyzer type="query">
      <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" conf="ik.conf"/>
      <filter class="solr.LowerCaseFilterFactory"/>
  </analyzer>
</fieldType>

ok,配置IK 完成,退出容器:exit
重启solr 的容器:
docker restart solr

在浏览器输入主机号:8983

安装solr + IK分词器 _ Java侠

作者:root11
来源链接:https://www.cnblogs.com/Ozgblog/p/13126760.html

标签: Solr

“安装solr + IK分词器” 的相关文章

Solr介绍以及Centos7安装Solr

Solr介绍以及Centos7安装Solr

Solr介绍及Centos7安装Solr 一、Solr介绍 1、为什么要使用Solr solr是将整个索引操作功能封装好了的搜索引擎系统...

Ranger使用solrCloud存储审计日志

Ranger使用solrCloud存储审计日志 标签(空格分隔): Ranger 1, Zookeeper 搭建 1,忽略。默认已经搭建好zk 集群。 VECS...

centos7安装配置solr8.8.2

centos7安装配置solr8.8.2

1 环境 tomcat8 jdk8 solr8 2 流程 tomcat和jdk安装教程可以看我其他文章,...

(转)淘淘商城系列——Solr的安装

(转)淘淘商城系列——Solr的安装

http://blog.csdn.net/yerenyuan_pku/article/details/72874134 Solr是一个独立的企业级搜索应用服务...

apache solr 安装

某个项目中用到了全文搜索引擎apache solr。之前一直是在命令行用java –jar start.jar来启动solr的。这样的方式只能用在开发时。因为一旦...

solr 3.5 配置及应用(二)

在 solr 3.5 配置及应用(一) 讲过一了 solr 3.5的详细配置,本节我们讲利用solr 的客户端调用solr的应用了! 一、利用S...

solr学习笔记-linux下配置solr(转)

solr学习笔记-linux下配置solr(转)

本文地址:   http://zhoujianghai.iteye.com/blog/1540176   首先介绍一下solr: Apa...

Solr+hbase方案

Solr+hbase方案

一、Solr+hbase方案 Solr是一个独立的企业级搜索应用server,它对并提供相似干Web-service的API接口。用户能够通过http请求,向搜索引擎...

基于Solr和Zookeeper的分布式搜索方案的配置

基于Solr和Zookeeper的分布式搜索方案的配置

1.1 什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud。当一个系统...

Solr配置(SolrCloud模式、7.x).方式一

n5 1.关闭防火墙 1)systemctl stop firewalld.service 2)systemctl disable f...