美文网首页
Solr中文排序问题/分词搜索问题

Solr中文排序问题/分词搜索问题

作者: Martin_阿锤 | 来源:发表于2018-05-17 11:37 被阅读193次
    1. 现象描述


      图片.png

      如图,搜索全脂奶粉,脱脂奶粉排名却比较靠前

    2.问题分析


    图片.png

    solr中文分词粒度过细(左图为建表索引时的分词,右图为查询时的分词)

    3.解决过程
    ik分词器对中文分词效果较好,但现在已经停止更新。
    公司线上solr版本较低。先下载一个最新的solr(version 7.3.+)到本地跑起来再说。
    下载的压缩包解压后,进入到bin目录,solr start成功启动。
    在solr_home下新建my_core文件夹,再在其中新建conf和data文件夹,conf下的文件拷贝example文件夹中的
    ik分词器:
    https://github.com/EugenePig/ik-analyzer-solr5
    下载后在该目录mvn clear install(JDK>=1.8)
    生成的jar复制到solr_home\server\solr-webapp\webapp\WEB-INF\lib下
    配置的schema文件里面添加:

    <fieldType name="text_ik" class="solr.TextField">
    <analyzer type="index">
    <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" />
    </analyzer>
    <analyzer type="query">
    <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" />
    </analyzer>
    </fieldType>

    重启solr,在analysis下可以测试新的分词效果


    图片.png

    分词效果达到

    ps:如果要改变index索引的分词analyzer/tokenizer,是不需要重新数据入库的

    相关文章

      网友评论

          本文标题:Solr中文排序问题/分词搜索问题

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