solr基本指令:
jetty部署【推荐】:
Linux: $ bin/solr start;
Windows: bin\solr.cmd start
创建core:
Linux: $ bin/solr create -c corehotel;
Windows: bin\solr.cmd create -c corehotel
停止所有:bin/solr stop -all;
重启solr【指定端口】:bin/solr start 【 -p 8983】;
查看帮助:bin/solr -help ;
状态:bin/solr status
1、部署solr6.6(本教程基于solr自带的jetty启动),tomcat部署配置教程相似【由于solr解压即用,部署简单,此处省略详细部署教程】。
2、下载支持solr6.6的ikanalyzer-6.6.0.jar,源码地址:
https://github.com/zxiaofan/ik-analyzer-solr6
,可直接在target目录(或release)下载已打包好的ikanalyzer-6.6.0.jar。
Note:
ikanalyzer原作者已停止更新,上述代码根据网友描述修改了相关文件使之兼容sole6.6。
3、下载拼音插件:pinyin4j-2.5.0.jar、pinyinAnalyzer4.3.1.jar,相关jar下载见文末。
4、将下载的3个插件copy到\server\solr-webapp\webapp\WEB-INF\lib目录。
5、修改managed-schema(server\solr\[coreName]\conf目录),在节点前新增如下配置:
text_ik:IK分词,配置同义词过滤器;
text_pinyin:支持IK分词,索引index支持拼音过滤器。
6、重启solr,访问
http://localhost:8983/solr/#/【corehotel】/analysis
Analyse Fieldname / FieldType选择text_ik,
6.1、中文分词:
6.2、IK扩展词
“嗨咯”这个词语我不想拆分怎么办呢,只需在server\solr-webapp\webapp\WEB-INF\classes目录配置扩展词即可。配置文件包含:IKAnalyzer.cfg.xml、以及ext.dic,相关文件可直接在附件下载。
在ext.dic内容中新增一行数据“嗨咯”,然后重启solr,再次查询“嗨喽朋友今天天气真好”,就会发现“嗨喽”并未被分词了。
6.3、同义词
如果我想查询“朋友”的时候也能搜索到“zxiaofan”怎么操作呢,只需在server\solr\【coreName】\conf\synonyms.txt文件中新增一行数据(朋友,zxiaofan)即可。重启solr,再次查询“嗨喽朋友今天天气真好”,你就会发现分词器结果中包含了“zxiaofan”这个词语了。
6.4、pinyin4j拼音分词
Analyse Fieldname / FieldType选择text_pinyin,你会发现分词结果中包含了拼音,并且前面配置的扩展词、同义词依然有效(因为text_pinyin依旧使用了IK分词器)。
相关配置文件或jar均可在github下载,
https://github.com/zxiaofan/ik-analyzer-solr6/releases/tag/6.6.0。
欢迎个人转载,但须在文章页面明显位置给出原文连接;
未经作者同意必须保留此段声明、不得随意修改原文、不得用于商业用途,否则保留追究法律责任的权利。
【 CSDN 】:csdn.zxiaofan.com
【GitHub】:github.zxiaofan.com
如有任何问题,欢迎留言。祝君好运!
Life is all about choices!
将来的你一定会感激现在拼命的自己!