solr8.3整合IK分词器

其他 piniu 1770浏览 0评论

1.下载 ik分词器的jar包

wget https://search.maven.org/remotecontent?filepath=com/github/magese/ik-analyzer/8.3.0/ik-analyzer-8.3.0.jar

2.将ik-analyzer-8.3.0.jar 添加到Solr服务的Jetty或Tomcat的webapp/WEB-INF/lib/目录下;

cp -rf ik-analyzer-8.3.0.jar /opt/solr-8.3.1/server/solr-webapp/webapp/WEB-INF/lib/

3.配置Solr的managed-schema,添加ik分词器,示例如下
(本人配置的core name为 metadata,所以managed-schema文件是 /opt/solr-8.3.1/server/solr/metadata/conf/managed-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>

4.重启solr服务,测试分词

/opt/solr-8.3.1/bin/solr restart -p 8000 -force

5.登录solr web后台, 测试分词效果,如下图

6. 如果对中文进行分词,需要把定义字段的type类型选用为: text_ik , 如下代码:

<field name="book_name" type="text_ik" uninvertible="true" indexed="true" stored="true"/>


发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • * 昵称:
  • * 邮箱: