美文网首页
企业级内部搜索框架Solr以及中文分词器插件IK Analyze

企业级内部搜索框架Solr以及中文分词器插件IK Analyze

作者: 烈格黑街 | 来源:发表于2018-03-06 23:09 被阅读0次

一 . 简介

官网:http://lucene.apache.org/solr/
下载地址:http://archive.apache.org/dist/lucene/solr/

  • Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。Solr是一个全文检索服务器,只需要进行配置就可以实现全文检索服务。

二 . 单机版solr安装

  1. 安装JDK
tar jdk-7u80-linux-x64.tar.gz
mv jdk1.7.0_80/ /usr/local/jdk7
vi /etc/profile

修改环境变量如下

export JAVA_HOME=/user/local/jdk7
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

. /etc/profile或者source /etc/profile重新加载系统环境变量

  1. 安装tomcat
tar -zxf apache-tomcat-7.0.70.tar.gz
mv apache-tomcat-7.0.70 /usr/local/solr/
cd /usr/local/solr/
mkdir tomcat
mv bin conf/ lib/ LICENSE logs/ NOTICE RELEASE-NOTES RUNNING.txt temp/ webapps/ work/ tomcat/
cd tomcat/
bin/startup.sh

#查看tomcat输出的日志信息,看tomcat是否真的启动成功
tailf logs/catalina.out   

#ctrl+c退出tailf命令
#关闭防火墙或者打开8080端口
vi /etc/sysconfig/iptables
service iptables restart
  1. 导入Solr项目
tar -zxf solr-4.10.3.tgz.tgz
  • solr-4.10.4/example/lib/ext下的Solr依赖的jar包放到solr-4.10.4/example/webapps/solr.war这个项目里的lib目录, 获得一个完整的项目solr
  • 配置solr的配置文件
    创建solrhome。solrhome是存放solr服务器所有配置文件的目录。
mkdir /usr/local/solr/solrhome
cp -r /root/myapps/solr-4.10.3/example/solr/* usr/local/solr/solrhome/
solrhome配置文件内容
  • 修改solr项目的web.xml配置配置文件的路径:
web.xml配置项
  1. 这样默认的solr项目就配置好了
  • 启动tomcat/usr/local/tomcat7/bin/startup.sh
  • 浏览器访问项目url, 我的是http://192.168.153.22:8080/solr

主界面

solr主页
添加条目成功
查询条目成功

二 . IK Analyser中文分词插件扩展

IK Analyser简介


  • 官网: https://gitee.com/wltea/IK-Analyzer-2012FF
  • 从2006年12月推出1.0版开始,IKAnalyzer已经推出 了3个大版本。最初,它是以开源项目Lucene为应用主体的,结合词典分词和文法分析算法的中文分词组件。新版本的IKAnalyzer3.0则发展为 面向Java的公用分词组件,独立于Lucene项目,同时提供了对Lucene的默认优化实现。

使用方法


  1. 将IK的jar包放入solr项目的lib目录

     cp IKAnalyzer2012FF_u1.jar /usr/local/solrTomcat/webapps/solr/WEB-INF/lib/
    
  2. 将IK的配置文件用户词典导入到项目WEB-INF/classes目录下

     mkdir /usr/local/solrTomcat/webapps/solr/WEB-INF/classes
     cp IKAnalyzer.cfg.xml ext_stopword.dic mydict.dic /usr/local/solrTomcat/webapps/solr/WEB-INF/classes
    
  3. 配置fieldType, 需要在solrhome/collection1/conf/schema.xml中配置。添加如下代码:

<fieldType   name="text_ik" class="solr.TextField">
  <analyzer   class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>

这个操作会为solr添加一个分词插件叫做text_ik

  • 看效果:


    分词器效果

相关文章

网友评论

      本文标题:企业级内部搜索框架Solr以及中文分词器插件IK Analyze

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