solr(五)同义词加中文分词

            同义词加中文分词的话可以采用mmseg4j,mmseg4j的配置步骤如下:

           1: 下载地址:

           http://code.google.com/p/mmseg4j/downloads/list.
           2.解压mmseg4j-1.9.0.v20120712-SNAPSHOT.zip
           用到下面文件:
               mmseg4j-all-1.9.0.v20120712-SNAPSHOT.jar 放到之前安装$CATALINA_HOME/webapps/solr/WEB-INF/lib/目录下
                data 目录,建议拷贝下面内容到$SOLR_HOME\collection1\conf\mm4jdic
          3.设置mmseg4j中文分词和同义词
           修改$SOLR_HOME/collection1/conf/schema.xml,在<types></types>中增加如下内容:

          

<fieldType name="textMaxWord" class="solr.TextField" >
  <analyzer type="index">
	<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="max-word"/>
	<filter class="solr.StopFilterFactory" ignoreCase="false" words="stopwords.txt"/>
	<filter class="solr.StandardFilterFactory"/>
	<filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
  </analyzer>
  <analyzer type="query">
	<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="max-word"/>
	<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
	<filter class="solr.StopFilterFactory" ignoreCase="false" words="stopwords.txt"/>
	<filter class="solr.StandardFilterFactory"/>
	<filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
  </analyzer>
</fieldType>

    同样要定义相关类型的字段

 

<field name="title_copy" type="textMaxWord" indexed="true" stored="true" termVectors="true"/>

 4: 导入数据库索引,这个可以参看dataImport,至于synonyms的配置可以参看上一贴没做改动。

 测试输入日本,结果显示了都是相关中国的内容,基本达到了同义词的效果。



 

猜你喜欢

转载自extrimlycold20070206121610.iteye.com/blog/1844405