`

全文检索服务SOLR3.3支持IK中文分词

阅读更多

转自:http://sinykk.iteye.com/blog/1171098

 

下载如下三个软件【请注意版本】

1:Solr的下载地址
http://labs.renren.com/apache-mirror//lucene/solr/3.3.0/apache-solr-3.3.0.zip 【使用 D:\solr\apache-solr-3.3.0\example\solr文件夹里的内容】
2:Tomcat的下载地址
http://apache.etoak.com/tomcat/tomcat-6/v6.0.33/bin/apache-tomcat-6.0.33.tar.gz 【使用其运行JAVA WEB】
3:IKAnalyzer下载地址
http://ik-analyzer.googlecode.com/files/IKAnalyzer3.2.8%20bin.zip 【只使用其IKAnalyzer3.2.5Stable.jar】

提前是安装好JDK1.6+,并将每个软件解压到 /sinykk 里


1、将TOMCAT解压到 /usr/local/apache-tomcat-6.0.33/

2、将 /solr/apache-solr-3.3.0/example/solr 文件拷贝到 /usr/local/apache-tomcat-6.0.33/

3、然后修改TOMCAT的/usr/local/apache-tomcat-6.0.33/conf/server.xml【增加中文支持】

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

 

 4、添加文件 /usr/local/apache-tomcat-6.0.33/conf/Catalina/localhost/solr.xml 内容如下

 

 

<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="/usr/local/apache-tomcat-6.0.33/webapps/solr" debug="0" crossContext="true" >
   <Environment name="solr/home" type="java.lang.String" value="/usr/local/apache-tomcat-6.0.33/solr" override="true" />
</Context>
 

5、将/sinykk/solr/apache-solr-3.3.0/example/webapps/solr.war文件放到/usr/local/apache-tomcat-6.0.33/webapps文件夹下,并启动TOMCAT

6、将/sinykk/solr/IKAnalyzer3.2.8.jar 文件放到/usr/local/apache-tomcat-6.0.33/webapps/solr/WEB-INF/lib 目录下


7、修改/usr/local/apache-tomcat-6.0.33/solr/conf/schema.xml文件为

 

<?xml version="1.0" encoding="UTF-8" ?>
<schema name="example" version="1.4">
 <types>
    <fieldType name="string" class="solr.StrField" sortMissingLast="true" omitNorms="true"/>
	 <!-- 
	<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100">
      <analyzer type="index">
        <tokenizer class="solr.StandardTokenizerFactory"/>
        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
        <filter class="solr.LowerCaseFilterFactory"/>
      </analyzer>
      <analyzer type="query">
        <tokenizer class="solr.StandardTokenizerFactory"/>
        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
        <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
        <filter class="solr.LowerCaseFilterFactory"/>
      </analyzer>
    </fieldType>
	-->

	 <fieldType name="textik" class="solr.TextField" >
               <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>  
       
               <analyzer type="index">  
                   <tokenizer class="org.wltea.analyzer.solr.IKTokenizerFactory" isMaxWordLength="false"/>  
                   <filter class="solr.StopFilterFactory"  
                           ignoreCase="true" words="stopwords.txt"/>  
                   <filter class="solr.WordDelimiterFilterFactory"  
                           generateWordParts="1"  
                           generateNumberParts="1"  
                           catenateWords="1"  
                           catenateNumbers="1"  
                           catenateAll="0"  
                           splitOnCaseChange="1"/>  
                   <filter class="solr.LowerCaseFilterFactory"/>  
                   <filter class="solr.EnglishPorterFilterFactory"  
                       protected="protwords.txt"/>  
                   <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>  
               </analyzer>  
     			<analyzer type="query">  
                   <tokenizer class="org.wltea.analyzer.solr.IKTokenizerFactory" isMaxWordLength="false"/>  
                   <filter class="solr.StopFilterFactory"  
                           ignoreCase="true" words="stopwords.txt"/>  
                   <filter class="solr.WordDelimiterFilterFactory"  
                           generateWordParts="1"  
                           generateNumberParts="1"  
                           catenateWords="1"  
                           catenateNumbers="1"  
                           catenateAll="0"  
                           splitOnCaseChange="1"/>  
                   <filter class="solr.LowerCaseFilterFactory"/>  
                   <filter class="solr.EnglishPorterFilterFactory"  
                       protected="protwords.txt"/>  
                   <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>  
               </analyzer>  
       
</fieldType>
 </types>


 <fields>
  <field name="id" type="string" indexed="true" stored="true" required="true" /> 
 </fields>

 <uniqueKey>id</uniqueKey>

</schema>

 

 

最后运行http://192.168.171.129:8983/solr/admin/analysis.jsp

效果图如下

 


 

分享到:
评论

相关推荐

    solr全文检索+IK分词器

    solr全文检索整合ik中文分析器的配置实现搜索引擎,已在项目中使用过,可以共用

    solr+IK分词集成tomcat实现电商项目的全文检索

    压缩包内含有solr+ik如何配置的详细介绍以及solr+ik的包,省去了自己去找地址下载的麻烦,经测试使用完全可以在电商电商项目中实现全文检索

    solr7 的 ik分词器

    solr7 的 ik分词器 ik-analyzer-solr7.x ,全文检索体验升级,更精确

    solr+IK分词集成tomcat实现全文检索

    压缩包内含有solr+ik如何配置的详细介绍以及solr+ik的安装包,省去了自己去找地址下载的麻烦,经测试使用完全可以在电商电商项目中实现全文检索

    SpringBoot集成Solr全文检索,示例工程源码,ik分词插件

    SpringBoot集成Solr全文检索,示例工程源码,ik分词插件

    solr配置IK分词器Jar包和配置文件

    solr 全文检索系统配置IK 分词器的jar包 和相关的配置文件。

    Solr3.6+IKAnalyzer3.2.8分词安装部署

    Solr是一个全文检索服务器,基于Lucene3.5开发的,我们可以在solr的基础上进行定制化的开发。新手学习记录了学习过程为后来者提供个参考吧。

    IKAnalyzer2012FF_u1中文分词器

    IK中分分词器,在全文检索中非常有用,尤其对于中文文档的全文检索。本压缩包打包文件可以满足使用solr建立全文检索的配置需求。

    solr 分词器 mmseg4j IKAnalyzer

    solr 分词器 mmseg4j IKAnalyzer

    solr搭建(含拼音检索,三种分词器,停词器,扩展词库)

    solr的基本搭建,拼音检索,三种分词器(smartcn ,IK,mmseg4j)的安装,停词器的安装

    2天学习ElasticSearch教程(3G)

    :2天学习ElasticSearch教程(3G)〖课程目录〗:elasticsearch-1---视频┃---01全文检索概念.mp4┃---02Lucene的API介绍.mp4┃---03Lucene的API介绍.mp4┃---04Lucene的API介绍和IK分词器.mp4┃---05Lucene的API介绍-...

    开源bbs源码java-solr:索尔

    安装好ik分词器与拼音分词器的solr 版本: jdk1.8 solr6.0.1 tomcat8 使用说明 clone 代码 https://github.com/tomoya92/solr.git 打开 apache-tomcat-8.0.35/webapps/solr/WEB-INF/web.xml 修改 {solr_home} 为...

    java开源包1

    Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换。拼音输出格式可以定制。 异步HTTP客户端开发包 HttpAsyncClient HttpAsyncClient 是一个异步的 HTTP 客户端开发包,基于 HttpCore NIO 和 HttpClient ...

    java开源包11

    Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换。拼音输出格式可以定制。 异步HTTP客户端开发包 HttpAsyncClient HttpAsyncClient 是一个异步的 HTTP 客户端开发包,基于 HttpCore NIO 和 HttpClient ...

    java开源包2

    Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换。拼音输出格式可以定制。 异步HTTP客户端开发包 HttpAsyncClient HttpAsyncClient 是一个异步的 HTTP 客户端开发包,基于 HttpCore NIO 和 HttpClient ...

    java开源包3

    Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换。拼音输出格式可以定制。 异步HTTP客户端开发包 HttpAsyncClient HttpAsyncClient 是一个异步的 HTTP 客户端开发包,基于 HttpCore NIO 和 HttpClient ...

    java开源包6

    Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换。拼音输出格式可以定制。 异步HTTP客户端开发包 HttpAsyncClient HttpAsyncClient 是一个异步的 HTTP 客户端开发包,基于 HttpCore NIO 和 HttpClient ...

    java开源包5

    Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换。拼音输出格式可以定制。 异步HTTP客户端开发包 HttpAsyncClient HttpAsyncClient 是一个异步的 HTTP 客户端开发包,基于 HttpCore NIO 和 HttpClient ...

    java开源包10

    Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换。拼音输出格式可以定制。 异步HTTP客户端开发包 HttpAsyncClient HttpAsyncClient 是一个异步的 HTTP 客户端开发包,基于 HttpCore NIO 和 HttpClient ...

    java开源包4

    Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换。拼音输出格式可以定制。 异步HTTP客户端开发包 HttpAsyncClient HttpAsyncClient 是一个异步的 HTTP 客户端开发包,基于 HttpCore NIO 和 HttpClient ...

Global site tag (gtag.js) - Google Analytics