转载请注明出处:http://blog.csdn.net/l1028386804/article/details/70200378

在上一篇博文《CentOS安装与配置Solr6.5》中,我们讲解了如何在CentOS中安装与配置Solr6.5,那接下来我们就一起实现如何在Solr6.5中实现配置中文分词IKAnalyzer和拼音分词pinyinAnalyzer。好了我们直接进入主题。

一、创建Core:

1、首先在solrhome(solrhome的路径和配置见《 CentOS安装与配置Solr6.5》 中solr的web.xml)中创建mycore目录;

[root@localhost down]#
[root@localhost down]# mkdir /down/apache-tomcat-8.5.12/solrhome/mycore
[root@localhost down]# cd /down/apache-tomcat-8.5.12/solrhome/mycore[root@localhost mycore]#

2、复制solr-6.5.0\example\example-DIH\solr\solr下的所有文件到/down/apache-tomcat-8.5.12/solrhome/mycore目录下:

[root@localhost mycore]# cp -R /down/solr-6.5.0/example/example-DIH/solr/solr/* ./
[root@localhost mycore]# ls
conf  core.properties
[root@localhost mycore]#

3、重新启动tomcat;

[root@localhost down]# /down/apache-tomcat-8.5.12/bin/shutdown.sh
[root@localhost down]# /down/apache-tomcat-8.5.12/bin/startup.sh

4、此时在浏览器输入 http://localhost:8080/solr/index.html即可出现Solr的管理界面,即可看到我们刚才的mycore

二、配置solr自带的中文分词(和IK的区别是不能自己添加词库):

1、配置solr6.5自带中文分词。复制solr-6.5.0/contrib/analysis-extras/lucene-libs/lucene-analyzers-smartcn-6.5.0.jar到apache-tomcat-8.5.12/webapps/solr/WEB-INF/lib/目录下。

[root@localhost down]# cp /down/solr-6.5.0/contrib/analysis-extras/lucene-libs/lucene-analyzers-smartcn-6.5.0.jar /down/apache-tomcat-8.5.12/webapps/solr/WEB-INF/lib/

2、为core添加对中文分词的支持。编辑mycore下conf下的managed-schema文件.

[root@localhost conf]# cd /down/apache-tomcat-8.5.12/solrhome/mycore/conf
[root@localhost conf]# vi managed-schema 

在文件的 </schema>前添加

<fieldType name="text_smartcn" class="solr.TextField" positionIncrementGap="0"><analyzer type="index"><tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/></analyzer><analyzer type="query"><tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/></analyzer>
</fieldType>

重启tomcat,后在浏览器输入http://localhost:8080/solr/index.html#/mycore/analysis

在Field Value (Index)文本框输入一些中文,然后Analyse Fieldname / FieldType:选择text_smartcn查看中文分词的效果。

如图:

三、配置IKAnalyzer的中文分词:

1、首先下载IKAnalyzer 这是最新的支持solr6.5.

解压后会有四个文件。

[root@localhost ikanalyzer-solr5]# ls
ext.dic  IKAnalyzer.cfg.xml  solr-analyzer-ik-5.1.0.jar ik-analyzer-solr5-5.x.jar  stopword.dic 

ext.dic为扩展字典,stopword.dic为停止词字典,IKAnalyzer.cfg.xml为配置文件,solr-analyzer-ik-5.1.0.jar ik-analyzer-solr5-5.x.jar为分词jar包。
2、将文件夹下的IKAnalyzer.cfg.xml , ext.dic和stopword.dic 三个文件 复制到/webapps/solr/WEB-INF/classes 目录下,并修改IKAnalyzer.cfg.xml

[root@localhost ikanalyzer-solr5]# cp ext.dic IKAnalyzer.cfg.xml stopword.dic /down/apache-tomcat-8.5.12/webapps/solr/WEB-INF/classes/
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties><comment>IK Analyzer 扩展配置</comment><!--用户可以在这里配置自己的扩展字典 --><entry key="ext_dict">ext.dic;</entry><!--用户可以在这里配置自己的扩展停止词字典--><entry key="ext_stopwords">stopword.dic;</entry></properties>

3、在ext.dic 里增加自己的扩展词典,例如,唯品会 聚美优品

4、复制solr-analyzer-ik-5.1.0.jar ik-analyzer-solr5-5.x.jar到/down/apache-tomcat-8.5.12/webapps/solr/WEB-INF/lib/目录下。

[root@localhost down]# cp /down/ikanalyzer-solr5/solr-analyzer-ik-5.1.0.jar ik-analyzer-solr5-5.x.jar /down/apache-tomcat-8.5.12/webapps/solr/WEB-INF/lib/

5、在 solrhome\mycore\conf\managed-schema 文件</ schema>前增加如下配置

<!-- 我添加的IK分词 -->
<fieldType name="text_ik" class="solr.TextField"><analyzer type="index"><tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="true"/></analyzer><analyzer type="query"><tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="true"/></analyzer>
</fieldType>

注意:  记得将stopword.dic,ext.dic的编码方式为UTF-8 无BOM的编码方式。

重启tomcat查看分词效果。

四、配置拼音检索:

1、前期准备,需要用到pinyin4j-2.5.0.jar、pinyinAnalyzer.jar这两个jar包,下载地址。

2、将pinyin4j-2.5.0.jar、pinyinAnalyzer.jar这两个jar包复制到/down/apache-tomcat-8.5.12/webapps/solr/WEB-INF/lib/目录下。

[root@localhost down]# cp pinyin4j-2.5.0.jar pinyinAnalyzer4.3.1.jar /down/apache-tomcat-8.5.12/webapps/solr/WEB-INF/lib/

3、在 solrhome\mycore\conf\managed-schema 文件</ schema>前增加如下配置:

<fieldType name="text_pinyin" class="solr.TextField" positionIncrementGap="0"><analyzer type="index"><tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory"/><filter class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory" minTermLenght="2" /><filter class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory" minGram="1" maxGram="20" /></analyzer><analyzer type="query"><tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory"/><filter class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory" minTermLenght="2" /><filter class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory" minGram="1" maxGram="20" /></analyzer>
</fieldType>

重启tomcat查看拼音检索效果。

这里用的是solr自带的中文分词加上pinyin4j来实现的

相关文件的下载地址:

ikanalyzer-solr5.zip

pinyin.zip

Solr之——配置中文分词IKAnalyzer和拼音分词pinyinAnalyzer相关推荐

  1. Elasticsearch生产实战(ik分词器、拼音分词、自动补全、自动纠错)

    目录 一.IK分词器 1.IK分词器介绍 2.安装 3.使用 4.自定义词库 二.拼音分词器 1.拼音分词器介绍 2.安装 三.自动补全 1.效果演示 2.实战 四.自动纠错 1.场景描述 2.DSL ...

  2. solr 中文分词器IKAnalyzer和拼音分词器pinyin

    solr分词过程: Solr Admin中,选择Analysis,在FieldType中,选择text_en 左边框输入 "冬天到了天气冷了小明不想上学去了",点击右边的按钮,发现 ...

  3. 服务器安装配置elasticsearch,kibana,IK分词器和拼音分词器,集群搭建教程

    docker安装配置elasticsearch,kibana和IK分词器 elasticsearch文章系列 前置安装docker 创建docker网络 安装Elasticsearch 运行elast ...

  4. [Elasticsearch](五)Docker环境下搭建Elasticsearch,Elasticsearch集群,Elasticsearch-Head以及IK分词插件和拼音分词插件

    目录: https://github.com/dolyw/ProjectStudy/tree/master/Elasticsearch DockerStudy dolyw:https://note.d ...

  5. ElasticSerach 6.0.1 测试IK分词器和拼音分词器是否生效

    post http://192.168.1.129:9200/_analyze

  6. Solr配置中文的分词器-简单配置

    Solr配置中文的分词器 文章目录 Solr配置中文的分词器 英文分词 中文的查询 Solr需要配置中文分词器(重要) 配置中文分词后,再分析一次   这篇文章,主要是讲解Solr如何配置中文分词器, ...

  7. Solr搜索引擎 — 中文全拼简拼分词

    搞定了中文分词下一个就是要来搞定拼音分词了,拼音分词有分为全拼和简拼 附上: 喵了个咪的博客:http://w-blog.cn Solr官网:http://lucene.apache.org/solr ...

  8. es拼音分词 大帅哥_SpringBoot集成Elasticsearch 进阶,实现中文、拼音分词,繁简体转换...

    Elasticsearch 分词 分词分为读时分词和写时分词. 读时分词发生在用户查询时,ES 会即时地对用户输入的关键词进行分词,分词结果只存在内存中,当查询结束时,分词结果也会随即消失.而写时分词 ...

  9. elasticsearch (一): Centos7 RPM 方式安装最新单机版elasticsearch版本7.10.2 并配置中文(ik)、拼音(pinyin)插件

    目录 Centos7  RPM 安装 ES 操作系统介绍: 部署方式选择RPM包管理工具 修改远程访问和更改IP ,重启es常见问题 安装插件: ik  pinyin 中文分词插件地址: 安装中文分词 ...

最新文章

  1. 云计算出海!阿里云将成新加坡智慧国家战略“军师”
  2. 独家 | 6种让Python程序变慢的坏习惯
  3. SpringBoot 2.x 监控中心:Actuator
  4. C++STL的vector中front(),back(),begin(),end()的用法
  5. docker安装问题
  6. 字符串类中的StringBuffer,StringBuilder
  7. 如何设置ListView控件中的列头的颜色!
  8. 北京四中院在线裁定一起跨国离婚案
  9. 【sklearn第十七讲】特征选择
  10. C#.Net 调用Java的Web Service
  11. CentOS 7 安装EOS 并启动钱包
  12. 彻底弄懂TIME_WAIT 及 tcp_tw_reuse选项
  13. C语言 冒泡排序 程序流程图,C语言冒泡排序及流程图(思路解析)
  14. 如何随意切换Python版本
  15. AD9854的工作原理和应用电路图
  16. 如何把word转成pdf格式以及如何从指定页开始设置页码技巧
  17. [牛客网中级项目]第四章用户注册登陆管理
  18. 小米刷机OTA、 Recovery、 FASTBOOT三种方法直接的区别和联系
  19. 私有化云原生交付、8K 360VR直播……大厂技术专家揭秘金牌背后的“黑科技”...
  20. 设计没灵感,一定要逛这5个网站。

热门文章

  1. 移动互联下半场,云通信迈向场景为王”
  2. 如何让你的旧电脑跑起来与新电脑一样快?老程序员传授秘诀!
  3. Spring异常:NoSuchBeanDefinitionException: No qualifying bean of type ‘it.com.dao.AccountDao‘ available
  4. 易语言制作一款屏幕锁,锁屏并且透明
  5. PyQt5学习记录(2)---QMainWindow菜单栏、状态栏和工具栏
  6. 每天5分钟机器学习算法:支持向量机的目标函数是怎么来的?
  7. 【CSS】边框圆角的几种用法
  8. 上海星尚传媒主持人刘彦池
  9. 前端面经知识总结及参考回答 —— 尽量日更
  10. 美团民宿-“你的民宿,你做主”活动增长主题策划方案1.0