给solr配置中文分词器
Solr的中文分词器
- 中文分词在solr里面是没有默认开启的,需要我们自己配置一个中文分词器。
- 目前可用的分词器有smartcn,IK,Jeasy,庖丁。其实主要是两种,一种是基于中科院ICTCLAS的隐式马尔科夫HMM算法的中文分词器,如smartcn,ictclas4j,优点是分词准确度高,缺点是不能使用用户自定义词库;另一种是基于最大匹配的分词器,如IK ,Jeasy,庖丁,优点是可以自定义词库,增加新词,缺点是分出来的垃圾词较多。各有优缺点。
- 面给出两种分词器的安装方法,任选其一即可,推荐第一种,因为smartcn就在solr发行包的contrib/analysis-extras/lucene-libs/下,就是lucene-analyzers-smartcn-4.2.0.jar,首选在solrconfig.xml中加一句引用analysis-extras的配置,这样我们自己加入的分词器才会引到的solr中。
smartcn 分词器的安装
1.首选将发行包的contrib/analysis-extras/lucene-libs/ lucene-analyzers-smartcn-4.2.0.jar复制到\solr\contrib\analysis-extras\lib下,在solr_home文件夹下
2.打开/ims_advertiesr_core/conf/scheme.xml,编辑text字段类型如下,添加以下代码到scheme.xml中的相应位置,就是找到fieldType定义的那一段,在下面多添加这一段就好啦
<fieldType name="text_smartcn" class="solr.TextField" positionIncrementGap="0"><analyzer type="index"><tokenizer class="org.apache.lucene.analysis.cn.smart.SmartChineseSentenceTokenizerFactory"/><filter class="org.apache.lucene.analysis.cn.smart.SmartChineseWordTokenFilterFactory"/></analyzer><analyzer type="query"><tokenizer class="org.apache.lucene.analysis.cn.smart.SmartChineseSentenceTokenizerFactory"/><filter class="org.apache.lucene.analysis.cn.smart.SmartChineseWordTokenFilterFactory"/></analyzer>
</fieldType>
如果需要检索某个字段,还需要在scheme.xml下面的field中,添加指定的字段,用text_ smartcn作为type的名字,来完成中文分词。如 text要实现中文检索的话,就要做如下的配置:
<field name ="text" type ="text_smartcn" indexed ="true" stored ="false" multiValued ="true"/>
IK 分词器的安装
IKAnalyzer2012FF_u1.jar //分词器jar包
IKAnalyzer.cfg.xml //分词器配置文件
stopword.dic //分词器停词字典,可自定义添加内容
- 将IKAnalyzer2012FF_u1.jar 加入C:\apache-tomcat-7.0.57\webapps\solr\WEB-INF\lib中。
- 在C:\apache-tomcat-7.0.57\webapps\solr\WEB-INF下新建classes文件夹,将IKAnalyzer.cfg.xml、keyword.dic、stopword.dic加入classes里。
- 然后就可以像smartcn一样进行配置scheme.xml了
<!-- 配置IK分词器start --><fieldType name="text_ik" class="solr.TextField" positionIncrementGap="100"><analyzer type="index"><tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" isMaxWordLength="false"/><filter class="solr.LowerCaseFilterFactory"/></analyzer><analyzer type="query"><tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" isMaxWordLength="false"/><filter class="solr.LowerCaseFilterFactory"/></analyzer>
</fieldType>
中文分词器mmseg4j
mmseg4j-solr-2.3.0支持solr5.3
1.将两个jar包考入tomcat中solr项目里的lib文件内
2.配置solr_home中的schema.xml
在下面标签
<fieldType name="currency" class="solr.CurrencyField" precisionStep="8" defaultCurrency="USD" currencyConfig="currency.xml" /></fieldType>
里新增:
<fieldtype name="textComplex" class="solr.TextField" positionIncrementGap="100"> <analyzer> <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex" dicPath="dic"/> </analyzer>
</fieldtype> <fieldtype name="textMaxWord" class="solr.TextField" positionIncrementGap="100"> <analyzer> <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="max-word" /> </analyzer>
</fieldtype><fieldtype name="textSimple" class="solr.TextField" positionIncrementGap="100"> <analyzer> <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="simple" dicPath="n:/custom/path/to/my_dic" /> </analyzer>
</fieldtype>
重启tomcat测试分词
在schema.xml里定义:
<field name="content_test" type="textMaxWord" indexed="true" stored="true" multiValued="true"/>
然后测试:
给solr配置中文分词器相关推荐
- solr配置中文分词器
solr配置中文分词器 配置IK分词器 可配置停用词.扩展词.同义词
- solr(二):Solr配置中文分词器IKAnalyzer2012FF_u1
一.目的 通过使用比较高效的IKAnalyzer2012FF_u1分词器对中文内容进行检索分词,利于最终的全文检索. 二.环境 1.CentOS6.4 2.CDH5.7.0 3.solr-4.10.3 ...
- solr 配置中文分词器
ik 转载于:https://www.cnblogs.com/javabigdata/p/7127639.html
- 1、solr包结构介绍,solrCore的安装配置,solr部署到Tomcat,多solrCore配置,配置中文分词器,界面功能介绍,Schema.xml的基本使用,数据导入
一.下载solr,下载地址是:http://archive.apache.org/dist/lucene/solr/,选择自己想要的solr的版本,本项目使用的版本是4.10.3 二.如果想下载Luc ...
- 单机版Solr的中文分词器solr IK下载和配置、拓展词典、停用词典
下载ik分词器 solr IK中文分词器下载地址 github地址下载(最新版本): https://github.com/magese/ik-analyzer-solr solr7版本的ik分词器: ...
- Solr配置IK分词器
配置步骤 下载分词器 上传文件 添加jar包 添加配置文件 添加分词器,配置业务域 测试分词器 第一步 下载IK分词器 第二步 上传文件 查看 第三步 添加jar包 到solr工程 cp IKAnal ...
- solrcloud配置中文分词器ik
无论是solr还是luncene,都对中文分词不太好,所以我们一般索引中文的话需要使用ik中文分词器. 三台机器(192.168.1.236,192.168.1.237,192.168.1.238)已 ...
- Solr配置中文的分词器-简单配置
Solr配置中文的分词器 文章目录 Solr配置中文的分词器 英文分词 中文的查询 Solr需要配置中文分词器(重要) 配置中文分词后,再分析一次 这篇文章,主要是讲解Solr如何配置中文分词器, ...
- solr mysql 分词_solr 7+tomcat 8 + mysql实现solr 7基本使用(安装、集成中文分词器、定时同步数据库数据以及项目集成)...
基本说明 Solr是一个开源项目,基于Lucene的搜索服务器,一般用于高级的搜索功能: solr还支持各种插件(如中文分词器等),便于做多样化功能的集成: 提供页面操作,查看日志和配置信息,功能全面 ...
最新文章
- 设置Cocos2D屏幕横向或纵向的方法
- Qt计算器开发(二):信号槽实现数学表达式合法性检查
- dw项目符号空心圆怎么设置_项目规范配置之editorconfigamp;prettier
- nginx无法加载css
- python 使用requests模块进行 视频文件的下载
- 深入理解 PHP7 unset 真的会释放内存吗?
- 裕-C#过滤DataTable中的空数据和重复数据
- javascript无限请求_JAVASCRIPT事件循环
- AJAX设置光标离开自动提交,Ajax自动提交和刷新页面
- “金三银四”春招指南!在线javascript
- (3)安装插件-JsDroid引流脚本混合式开发技术系列教程By飞云脚本学院
- Pearson相关系数, Spearman相关系数,Kendall相关系数的区别
- 【python实现网络爬虫21】天眼查企业数据获取
- html游戏官网制作 英雄联盟LOL游戏网站设计与实现 (web课程与设计)
- linux系统 中文定制版,我们的Ubuntu 中文定制版呢?
- Oracle创建数据库连接——DATABASE LINKS
- OUC暑期培训(深度学习)——第一周学习记录:深度学习和pytorch基础
- 如何实现web浏览器无插件播放视频监控直播?
- 【Java笔记】——将晦涩难懂的IO流形象化
- 安装dplyr报错之rlang’ 0.4.5,但需要的是>= 0.4.10