solr4.x虽然提供了分词器,但不太适合对中文的分词,给大家推荐一个中文分词器mmseg4j
mmseg4j的下载地址:https://code.google.com/p/mmseg4j/
通过以下几步就可以把mmseg4j分词器集成到solr中:
1、解压mmseg4j-1.9.1.zip,把dist下面的所有jar文件拷贝到你应用服务器下的solr/WEB-INF/lib中(如果你的应用服务器下面没有solr,请参考《solr部署到tomcat》)。
2、拷贝data到solr_home/solr中(与core文件平级),并改名为dic(请参考《solr部署到tomcat》)
3、进入到你想使用mmseg4j分词器的core中(此处以solr自带的collection1为例),用编辑器打开collection1/conf/schema.xml配置文件,添加如下代码:
<!-- mmseg4j分词器 -->
<fieldType name="text_mmseg4j" class="solr.TextField" >
<analyzer type="index">
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex" dicPath="../dic" /><!--此处为分词器词典所处位置-->
</analyzer>
<analyzer type="query">
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex" dicPath="../dic" /><!--此处为分词器词典所处位置-->
</analyzer>
</fieldType>
4、引用mmseg4j分词器
上面我们已经定义了mmseg4j分词器,如何引用呢?
用编辑器打开collection1/conf/schema.xml配置文件,找到<fields>…</fields>,修改需要使用中文分词的字段,type=”text_mmseg4j”
<fields>
.......//省略
<field name="name" type="text_mmseg4j" indexed="true" stored="true" />
</fields>
通过以上步骤就可以成功配置mmseg4j分词器到solr中了。