`

Solr4.0+IKAnalyzer中文分词安装

 
阅读更多
 

 

 有近2年没接触Solr跟Lucene了,这2年自己跟solr/lucene都发生了很多变化。不过有种疏途同归的感觉,那就是都向分布式/云和监控靠了。2年前接触了solrcloud,那时大概玩了一周。那时很想玩cloud,但发现solrcloud并不是具有那种cloud。于是放弃了。现在发现solr4.0貌似集成了以前的solrcloud,通过zookeeper去管理集群。同时监控和运维管理方面也更加方便了。但具体没有多看,迫于业务的压力,也是火急火燎的赶紧给搭了个solr,以后再慢慢深入。

 以前虽然lucene,solr什么玩的很熟(源码层面).但两年没接触还真有点情同陌路。有时会想放弃一个自己熟悉的东西,去做新的东西,会很可惜。比如solr,lucene.

或许那时自己一直坚持下来,可能已经会有了自己的开源框架。爬虫也是,Heritrix坚持下来,或许分布式的,any ajax都可以抓取的框架已经猥琐出世。但这个世界没有什么

如果,只是从心底(所谓的follow heart),以及从身外(所谓的money)来说,我觉得当初的放弃,应该是暂时的放弃还是值得的。因为给了我不一样的视野。尤其全文检索等,拼到后面,拼的还是大数据,实时,数据挖掘。这也是当初我毅然决定做hadoop的原因。废话了一大把,进入主题吧。

1.依赖:

JDK1.6,Tomcat 5.5,Solr 4.0.0,IKAnalyzer 2012FF

Tomcat虽然不是必须,但觉得上生产环境的话,还是得用Tomcat,便于统一管理和监控.

Tomcat等你也可以用其他版本

2.下载:

#Tomcat:

wget http://archive.apache.org/dist/tomcat/tomcat-5/v5.5.35/bin/apache-tomcat-5.5.35.tar.gz

#Solr

wget Solr:  http://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/4.0.0/apache-solr-4.0.0.tgz

#IKAnalyzer

wget http://ik-analyzer.googlecode.com/files/IK%20Analyzer%202012FF_hf1.zip

3.安装步骤:

1)JDK安装

                   JDK安装省略,你只要安装完成在环境中设置JAVA_HOME即可,比如我这边是JAVA_HOME=/usr/java/default

2) TOMCAT安装

                     TOMCAT安装省略,你只要安装完车功能在环境中设置CATALINA_HOME即可,比如我这边是CATALINA_HOME=/opt/tomcat/current

3) 安装solr

a.安装solr webapp

                         解压solr后得到apache-solr-4.0.0,进入apache-solr-4.0.0/dist/,可以看到apache-solr-4.0.0.war.该文件其实是个zip文件,用命令

 unzip apache-solr-4.0.0.war将其解压,获得apache-solr-4.0.0,将其重命名为solr,放到tomcat目录下的webapps目录下,比如我这边是

              /opt/tomcat/current/webapps/

b.安装中文分词IKanalyzer

解压IK Analyzer 2012FF_hf1.zip,获得IK Analyzer 2012FF_hf1.将该目录下的IKAnalyzer.cfg.xml,IKAnalyzer2012FF_u1.jar,stopword.dic

放到之前安装TOMCAT_HOME/webapps/solr/WEB-INF/lib/目录下,比如我这里是/opt/tomcat/current/webapps/solr/WEB-INF/lib/

4) 安装solr-work,也就是solr配置和索引目录

a.告知solr它的工作目录在哪里

一般有两种方式,设置环境变量以及jndi。但我建议采用jndi,还是那个原因,便于维护.

在$TOMCAT_HOME/conf/Catalina/localhost里新建solr.xml文件,内容如下:

Xml代码 复制代码 收藏代码
  1.  <Context docBase="/usr/local/tomcat/webapps/solr.war" debug="0" crossContext="true" >      
  2.     <Environment name="solr/home" type="java.lang.String" value="/opt/solr/work/solr" override="true" />     
  3. </Context>   
 <Context docBase="/usr/local/tomcat/webapps/solr.war" debug="0" crossContext="true" >   
  	<Environment name="solr/home" type="java.lang.String" value="/opt/solr/work/solr" override="true" />  
</Context> 
 

其中里面的/opt/solr/work/solr就是所谓的solr工作目录.solr配置,以及索引都将存放到该目录.

b.配置solr

简单的话将刚解压后的apache-solr-4.0.0/example/solr下的所有文件复制到/opt/solr/work/solr目录下

c.设置IKAnalyzer中文分词

修改/opt/solr/work/solr/collection1/conf/中的schema.xml,在<type></types>中增加如下内容:

++

Xml代码 复制代码 收藏代码
  1. <fieldType name="text_ik" class="solr.TextField">  
  2.         <analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>  
  3.     <analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>  
  4. </fieldType>  
<fieldType name="text_ik" class="solr.TextField">
      	<analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
	<analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>
 

其中查询采用IK自己的最大分词法,索引则采用它的细粒度分词法.所以各自配置了isMaxWordLength属性.

4.启动/停止solr

只要启动/停止Tomcat即可

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics