您好,匿名用户
随意问技术百科期待您的加入

IKAnalyzer与solr4.0的整合方法

+3 投票
我要使用solr4.0做全文检索功能,使用IKAnalyzer做中文分词,这两者怎么进行整合呢?
用户头像 提问 2012年 12月10日 @ Apple 上等兵 (542 威望)
分享到:

1个回答

+2 投票
 
最佳答案

1 环境配置

Jdk1.6, tomcat6,solr4.0.0,IKAnalyzer 2012FF

2 软件下载地址

Jdk1.6:http://download.oracle.com/otn-pub/java/jdk/6u37-b06/jdk-6u37-linux-i586.bin
tomcat6:http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.29/bin/apache-tomcat-6.0.29.tar.gz
solr4.0.0:http://www.eu.apache.org/dist/lucene/solr/4.0.0/apache-solr-4.0.0.tgz
IKAnalyzer 2012FF:http://ik-analyzer.googlecode.com/files/IK%20Analyzer%202012FF_hf1.zip

3 安装步骤

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

3.2 安装Tomcat
    tomcat安装省略,你只要安装完成在环境中设置TOMCAT_HOME即可,比如我这边是TOMCAT_HOME = /usr/local/tomcat

//编辑tomcat的配置文件server.xml,添加了一个URIEncoding="UTF-8",因为solr的传输方式是utf-8格式的,不然中文会出现乱码
#vim /usr/local/tomcat/conf/server.xml

<Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" URIEncoding="UTF-8" />

3.3 安装solr

  //解压solr压缩文件
  #tar -zxvf  apache-solr-4.0.0.tgz    

  //建立solr的索引和配置的存放目录
  #mkdir /opt/solr 

  //拷贝solr项目war包 
  #cp  apache-solr-4.0.0/dist/apache-solr-4.0.0.war  /opt/solr/solr.war

  //拷贝solr示例的配置文件
  #cp   -R apache-solr-4.0.0/example/solr/*   /opt/solr/

  //在tomcat下新建solr.xml文件,配置tomcat下solr的环境变量
  docBase:项目路径,solr/home:solr的配置和索引文件存放路径
  #vim  /usr/local/tomcat/conf/Catalina/localhost/solr.xml,加入以下内容:

<Context docBase=" /opt/solr/solr.war" debug="0" crossContext="true" >
    <Environment name="solr/home" type="java.lang.String" value="/opt/solr/" override="true" />
</Context>

3.4 安装 IKAnalyzer 

  //解压IKAnalyzer压缩文件
  #unzip IK Analyzer 2012FF_hf1.zip

  //拷贝IKAnalyzer相关文件IKAnalyzer.cfg.xml, IKAnalyzer2012FF_u1.jar, stopword.dic到solr项目的lib下
  #cd IK Analyzer 2012FF_hf1

  #cp  IKAnalyzer.cfg.xml IKAnalyzer2012FF_u1.jar  stopword.dic  /usr/local/tomcat/webapps/solr

  //应用IKAnalyzer中文分词功能,修改/opt/solr/collection1/conf/中的schema.xml,在<type></types>中增加如下内容:
 #vim /opt/solr/collection1/conf/schema.xml

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

  这样shcma.xml文件中定义为text_suiyiwen类型的字段就能使用IKAnalyzer中文分词功能了。

4.启动/停止solr

只要启动/停止Tomcat即可

用户头像 回复 2012年 12月11日 @ Dante 上等兵 (290 威望)
编辑 2013年 1月4日 @Saber
提一个问题:

相关问题

+2 投票
1 回复 956 阅读
用户头像 提问 2013年 1月12日 @ Dante 上等兵 (290 威望)
+4 投票
1 回复 325 阅读
+2 投票
1 回复 401 阅读
用户头像 提问 2012年 12月11日 @ Saber 中士 (1,234 威望)
+2 投票
1 回复 802 阅读
+2 投票
1 回复 134 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...