Solr6.5配置中文分词器

Solr作为搜索应用服务器,我们在使用过程中,不可避免的要使用中文搜索。以下介绍solr自带的中文分词器和第三方分词器IKAnalyzer。

 注:下面操作在Linux下执行,所添加的配置在windon下依然有效。

运行环境

    •   Solr:6.5.1
    •   系统 : Linux

 

以下是设置 solr中文分词器的方法。

注:开始之前,假定你已经成功登录solr的界面,并创建了core。

一:使用solr自带 中文分词器

1、进入解压好的solr文件夹根目录下执行以下命令

1 cp ./contrib/analysis-extras/lucene-libs/lucene-analyzers-smartcn-6.5.1.jar /opt/tomcat-solr/webapps/solr/WEB-INF/lib/ 

复制lucene-analyzers-smartcn-6.5.1.jar该文件到 Tomcat下的 solr web应用中的lib目录下,不清楚的可以看 执行命令的地址。复制的文件就是 solr自带的中文分词器。

注:如果没有解压的目录,那么在solrhome的目录下也存在contrib这个文件夹,如果你已经成功登录过solr界面的话。

 

2、进入core目录下的conf文件夹,

打开 managed-schema文件,跳至文件最后,在最后添加新的字段类型如下

复制代码

1 <!--solr cnAnalyzer-->
2   <fieldType name="solr_cnAnalyzer" class="solr.TextField" positionIncrementGap="100">
3       <analyzer type="index">
4         <tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
5       </analyzer>
6       <analyzer type="query">
7         <tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
8       </analyzer>
9   </fieldType>

复制代码

 

  fieldType: 字段类型属性

name: 字段类型名称(可以理解为Java的 数据类型名称。例如: int、double、String等Java中的数据类型名称)

class: 数据类型(默认文本数据即可,还有其他的例如:字符串、浮点、整形等)
看下面的配置文件中 其他字段类型,应该很容易理解了:

复制代码

1  <!-- 字符串 -->
2    <fieldType name="string" class="solr.StrField" sortMissingLast="true" />
3  <!-- 布尔类型 -->
4    <fieldType name="boolean" class="solr.BoolField" sortMissingLast="true"/>
5  <!-- 整形 -->
6     <fieldType name="int" class="solr.TrieIntField" precisionStep="0" positionIncrementGap&#
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值