美文网首页
solr升级为8.7.0,看看自带的中文分词和高版本ik分词器效

solr升级为8.7.0,看看自带的中文分词和高版本ik分词器效

作者: dbasy | 来源:发表于2020-12-01 12:13 被阅读0次

1.老规矩新建core
将solr/solr-8.7.0/example/example-DIH/solr/solr/conf 拷贝到/Users/wangheng/Documents/work/solr/solr-8.7.0/server/solr/wh_core,其中wh_core是自己建的目录
2.启动solr
查看分词效果,显然这种分词不是我们需要的


image.png

3.先试试自带的中文分词器
solr/solr-8.7.0/contrib/analysis-extras/lucene-libs/lucene-analyzers-smartcn-8.7.0.jar 拷贝到solr/solr-8.7.0/server/lib

  1. 在solr/solr-8.7.0/server/solr/wh_core/conf/managed-schema添加中文分词器
        <fieldType name="text_cn" class="solr.TextField" positionIncrementGap="100">
        <analyzer>
        <tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
        </analyzer>
        </fieldType>

5.重启服务查看分词效果
solr8.7.0 solr自带的中文分词


image.png

solr5.5 ik5.5分词器


image.png
虽然都没有拆出"羊"字 但ik效果更好 不仅包含自带分词器的所有结果,而且拆出的词更多,比如"羊羔"等

6.试试ik新版效果
下载地址:https://github.com/magese/ik-analyzer-solr
6.1将ik-analyzer-8.3.0拷贝到solr/solr-8.7.0/server/lib
6.2managed-schema配置分词器


 <!-- ik中文分词器 -->
        <fieldType name="text_ik" class="solr.TextField">
    <analyzer type="index">
      <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" conf="ik.conf"/>
      <filter class="solr.LowerCaseFilterFactory"/>
    </analyzer>
    <analyzer type="query">
      <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" conf="ik.conf"/>
      <filter class="solr.LowerCaseFilterFactory"/>
    </analyzer>
        </fieldType>

效果虽然没有拆出"羊"字,但总体效果更好


image.png

相关文章

网友评论

      本文标题:solr升级为8.7.0,看看自带的中文分词和高版本ik分词器效

      本文链接:https://www.haomeiwen.com/subject/suajwktx.html