天天看點

ikanalyzer 相容solr4.9 ,支出同義詞配置ikanalyzer 相容solr4.9 ,支出同義詞配置

ikanalyzer 相容solr4.9 ,支出同義詞配置

  • 部署solr4.9

    solr4.9下載下傳位址

    http://archive.apache.org/dist/lucene/solr/4.9.0/solr-4.9.0.zip

    下載下傳解壓zip包後,我們打開example目錄

    ikanalyzer 相容solr4.9 ,支出同義詞配置ikanalyzer 相容solr4.9 ,支出同義詞配置
    ikanalyzer 相容solr4.9 ,支出同義詞配置ikanalyzer 相容solr4.9 ,支出同義詞配置

    cmd 鍵入: java -Dsolr.solr.home=solr-lcc -jar start.jar

    在浏覽器輸入 http://localhost:8983/solr/ 即可通路自己的solr

  • 為solr4.9 加上ikanalyzer中文分詞器

    ikanalyzer solr4.9相容包下載下傳位址

    http://pan.baidu.com/s/1geK0CXt

    将下載下傳的jar 包放到該目錄下

    ikanalyzer 相容solr4.9 ,支出同義詞配置ikanalyzer 相容solr4.9 ,支出同義詞配置
    ikanalyzer 相容solr4.9 ,支出同義詞配置ikanalyzer 相容solr4.9 ,支出同義詞配置

schema.xml檔案配置如下

<?xml version="1.0" encoding="UTF-8" ?>
<schema name="example" version="1.5">
    <fields>
        <field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" />

        <field name="title" type="text_ik" indexed="true" stored="true" required="true" multiValued="false" />

        <field name="text" type="string" indexed="true" stored="false" multiValued="true"/>
        <field name="_version_" type="long" indexed="true" stored="true"/>
    </fields>
    <uniqueKey>id</uniqueKey>
    <fieldType name="string" class="solr.StrField" sortMissingLast="true" />
    <fieldType name="int" class="solr.TrieIntField" precisionStep="0" positionIncrementGap="0"/>
    <fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0"/>


    <!-- ik分詞器 
    <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分詞器 同義詞配置 -->
    <fieldType name="text_ik" class="solr.TextField" positionIncrementGap="100">  
         <analyzer type="index">  
            <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true"/>  
           <!-- 
           <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" /> 
           -->  
           <!-- in this example, we will only use synonyms at query time  
           <filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" ignoreCase="true" expand="false"/>  
           -->  
           <filter class="solr.LowerCaseFilterFactory"/>  
         </analyzer>  

         <analyzer type="query">  
           <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true"/>  
           <!-- 
           <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> 

</schema>
           
  • 測試ik 分詞器的中文分詞與同義詞

    啟動solr-lcc 在浏覽器打開http://localhost:8983/solr/

    ikanalyzer 相容solr4.9 ,支出同義詞配置ikanalyzer 相容solr4.9 ,支出同義詞配置

其他相關

這是我在IK中文分詞器基礎上相容的solr4.9 代碼
https://github.com/chuangehh/IKAnalyzer.git

這個有什麼問題可以在github 與我溝通交流