solr添加中文IK分詞器,以及配置自定義詞庫

Solr是一個基於LuceneJava搜索引擎服務器。Solr 提供了層面搜索、命中醒目顯示而且支持多種輸出格式(包括 XML/XSLT  JSON 格式)。它易於安裝和配置,並且附帶了一個基於HTTP 的管理界面。Solr已經在衆多大型的網站中使用,較爲成熟和穩定。Solr 包裝並擴展了Lucene,因此Solr的基本上沿用了Lucene的相關術語。更重要的是,Solr 建立的索引與 Lucene搜索引擎庫徹底兼容。經過對Solr 進行適當的配置,某些狀況下可能須要進行編碼,Solr 能夠閱讀和使用構建到其餘 Lucene 應用程序中的索引。此外,不少 Lucene 工具(如NutchLuke)也可使用Solr 建立的索引。
web

 

solr默認是不支持中文分詞的,這樣就須要咱們手工配置中文分詞器,在這裏咱們選用IK Analyzer中文分詞器。
centos

IK Analyzer下載地址:https://code.google.com/p/ik-analyzer/downloads/list
服務器

如圖:

微信

 

 

默認你們已經下載並解壓了solr,在這裏咱們使用solr 4.10.4版本
app

試驗環境centos 6.5 JDK1.7
webapp

整合步驟
工具

1:解壓下載的IK Analyzer_2012_FF_hf1.zip壓縮包,把IKAnalyzer2012FF_u1.jar拷貝到solr-4.10.4/example/solr-webapp/webapp/WEB-INF/lib目錄下
網站

2:在solr-4.10.4/example/solr-webapp/webapp/WEB-INF目錄下建立目錄classes,而後把IKAnalyzer.cfg.xmlstopword.dic拷貝到新建立的classes目錄下便可。
搜索引擎

3:修改solr coreschema文件,默認是solr-4.10.4/example/solr/collection1/conf/schema.xml,添加以下配置
google

     <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>

4:啓動solrbin/solr start

5:進入solr web界面http://localhost:8983/solr,看到下圖操做結果即爲配置成功


 

 

到如今爲止,solr就和IK Analyzer中文分詞器整合成功了。

 

可是,若是我想自定義一些詞庫,讓IK分詞器能夠識別,那麼就須要自定義擴展詞庫了。

操做步驟:

1:修改solr-4.10.4/example/solr-webapp/webapp/WEB-INF/classes目錄下的IKAnalyzer.cfg.xml配置文件,添加以下配置

     <entry key="ext_dict">ext.dic;</entry>

2:新建ext.dic文件,在裏面添加以下內容(注意:ext.dic的編碼必須是Encode in UTF-8 without BOM,不然自定義的詞庫不會被識別)

     超人學院

3:重啓solr

4:在solr web界面進行以下操做,看到圖中操做結果即爲配置成功。


 

更多精彩內容請訪問:http://bbs.superwu.cn

關注超人學院微信二維碼:

相關文章
相關標籤/搜索