×
您的位置: 首页 > 编程笔记

solr7.0 中文分词+拼音分词

Solr 时间:2019-08-01  查看:400   收藏

资料准备

solr文件目录(只讲一下7有些变化的目录)

  • web目录 : solr7/server/solr_webapp/webapp/

  • home目录 : solr7/server/solr

  • bin目录 : solr7/bin

创建Core

运行solr

#进入bin目录$ cd ./solr7/bin#执行solr$ ./solr start -p 8000   ps: 停止和重启分别是(stop/restart)

创建core

  • 这里有个坑 就是在管理页面上根本创建不起

推荐使用手动创建方法:

# 进入home目录$ cd ./solr7/server/solr/# 创建core$ mkdir test_core# 进入test_core$ touch core.properties   (内容是name=your core name)# 创建文件目录$ mkdir data#拷贝一个conf到你的core下面$ cp -r ./configsets/sample_techproducts_configs/conf/ ./# 创建完成 重启solr 进入管理页面  可看到刚创建的core

创建中文分词器

IK分词器:

  • ext.dic为扩展字典

  • stopword.dic为停止词字典

  • IKAnalyzer.cfg.xml为配置文件

  • solr-analyzer-ik-5.1.0.jar ik-analyzer-solr5-5.x.jar为分词jar包。

  • 1:将IK分词器 JAR 包拷贝到solr7/server/solr_webapp/webapp/WEB-INF/lib/

  • 2:将词典 配置文件拷贝到 solr7/server/solr_webapp/webapp/WEB-INF/

  • 3: 更改test_coreconfmanaged-schema配置文件

<!-- 我添加的IK分词 --><fieldType name="text_ik" class="solr.TextField"><analyzer type="index"><tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="true"/></analyzer><analyzer type="query"><tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="true"/></analyzer></fieldType>
  • 重启 测试分词器text_ik 这里不细讲怎么去测试

pinyin分词器

  • 1:将pinyin分词器 JAR 包拷贝到solr7/server/solr_webapp/webapp/WEB-INF/lib/

  • 2: 更改test_coreconfmanaged-schema配置文件

<fieldType name="text_pinyin" class="solr.TextField" positionIncrementGap="0"><analyzer type="index"><tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory"/><filter class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory" minTermLenght="2" /><filter class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory" minGram="1" maxGram="20" /></analyzer><analyzer type="query"><tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory"/><filter class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory" minTermLenght="2" /><filter class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory" minGram="1" maxGram="20" /></analyzer></fieldType>
  • 重启 测试分词器text_pinyin 这里不细讲怎么去测试

 

0% (0)
0% (0)