ikanalyzer for solr4.3(ik4solr4.3)

ik4solr4.3
solr 4.3 의 ik 분사 기([https://github.com/lgnlgn/ik4solr4.3] 주요 변경 은 내 가 완성 한 것 이 아니 라 단지 지적 할 뿐이다.마 븐 사용)
  • solr 자신의 환경 에서 사용자 정의 사전 을 가 져 오 는 것 을 지원 합 니 다(solr 의 Resource Loader 를 사용 하면 사전 파일 을 conf 디 렉 터 리 에 넣 기만 하면 됩 니 다)
  • 4.567917.정기 적 으로 갱신 하 는 사용 정지 어,동의어 공장 류 를 추가 합 니 다==============나 는 분할 선====다음은 상세 설명====================================
    6.1      
    ①、           ,         。 
         org.wltea.analyzer.core  LexemePath.java:compareTo(LexemePath)  
    
    ②、         ,       (  stopFilter  )
     org.wltea.analyzer.dic  Dictionary.java:
     /*         */
    private DictCharNode _CharFreqDict;
    
     DictCharNode.java :
     HashMap           。
    
    ③、  solr   
     org.wltea.analyzer.lucene  。
     、IKHandler.java:    HTTP  ,              。
            :http://xxx/ikupdate?dicpath=dic.txt
            :1、           。
                  2、 Zookeeper    ,            ,   。
            :  solrconfig.xml   
    <requestHandler name="/ikupdate" class="org.wltea.analyzer.lucene.IKHandler">
        <lst name="defaults">
        </lst> 
    </requestHandler>
            
    <str name=”dicpath”>dic.txt</str>
    
     、IKTokenizerFactory.java
    IKTokenizer.java:    IK       。
            :IK        ,            _MainDict 。
            : schema.xml ,  dicpath   ,       ,    。
                          Dictionary  ,addDic2MainDic()  
    
     、IKStopFilter.java
    IKStopFilterFactory.java:     
    IKSynonymFilterFactory.java:     
            :1、       solr      
                  2、2     schema.xml    autoupdate   , true,                                。
            : schema.xml ,         ,     。
    
     、TimelyThread.java:
                ,     autoupdate=true,         ,             。
    
     、schema.xml  
    
    
    
      < fieldType name="text_cn" 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" />
       < filter class="solr.LowerCaseFilterFactory"/>
      < /analyzer>
    
      < analyzer type="query">
        <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" dicPath="extDic.txt,extDic1.txt"/>
        <filter class="org.wltea.analyzer.lucene.IKStopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" autoupdate="true"/>
        <filter class="org.wltea.analyzer.lucene.IKSynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true" autoupdate="true"/>
        <filter class="solr.LowerCaseFilterFactory"/>
      </analyzer>
      </fieldType>

    좋은 웹페이지 즐겨찾기