-
現(xiàn)象描述
圖片.png
如圖,搜索全脂奶粉婿牍,脫脂奶粉排名卻比較靠前
2.問題分析
solr中文分詞粒度過細(左圖為建表索引時的分詞旨涝,右圖為查詢時的分詞)
3.解決過程
ik分詞器對中文分詞效果較好准给,但現(xiàn)在已經(jīng)停止更新。
公司線上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下可以測試新的分詞效果
分詞效果達到
ps:如果要改變index索引的分詞analyzer/tokenizer暇榴,是不需要重新數(shù)據(jù)入庫的