solr 3.5 配置及應用(一)


一、solr 的簡介

Apache Solr 是一個開源的搜索服務器。Solr 使用 Java 語言開發,主要基於 HTTP 和 Apache Lucene 實現。Apache Solr 中存儲的資源是以 Document 為對象進行存儲的。每個文檔由一系列的 Field 構成,每個 Field 表示資源的一個屬性。Solr 中的每個 Document 需要有能唯一標識其自身的屬性,默認情況下這個屬性的名字是 id,在 Schema 配置文件中使用:<uniqueKey>id</uniqueKey>進行描述。

  Solr是一個高性能,采用Java5開發,基於Lucene的全文搜索服務器。文檔通過Http利用XML加到一個搜索集合中。查詢該集合也是通過 http收到一個XML/JSON響應來實現。它的主要特性包括:高效、靈活的緩存功能,垂直搜索功能,高亮顯示搜索結果,通過索引復制來提高可用性,提 供一套強大Data Schema來定義字段,類型和設置文本分析,提供基於Web的管理界面等。

二、solr 3.5 的下載

    solr 3.5下載地址:http://www.apache.org/dist//lucene/solr/

   tomcat  tomcat-7.0.26 下載:http://mirror.bjtu.edu.cn/apache/tomcat/tomcat-7/v7.0.26/bin/apache-tomcat-7.0.26.zip

三、solr 3.5的安裝

     1、解壓tomcat-7.0.26 到 e:\tomcat-7.0.26\下

     2、打開tomcat-7.0.26\conf 修改  server.xml 文件

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

        修改默認端口8080,可以不修改,添加字符編碼  URIEncoding="UTF-8" 否則中文會亂碼

      3、在apache-solr-3.5.0\dist目錄下找到apache-solr-3.5.0.war把重命名為solr.war 並上傳到 tomcat-7.0.26/webapps下。

        4、創建一個solr.xml文件,

        在tomcat-7.0.14\conf\Catalina\localhost\下創建一個solr.xml文件。內容為:      

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

        docBase:為solr的上傳目錄

    5、把apache-solr-3.5.0\example目錄下的solr文件夾上傳到e:/tomcat-7.0.26目錄下.索引文件會默認會放到 e:/tomcat-7.0.26\solr\data下.

     6、重新tomcat 在瀏覽器中輸入:http://localhost:8080/

          會出現:welcome to solr  

                     solr admin  說明發布已成功!

四、solr 3.5與IKAnalyzer 3.2.8分詞的整合

   1、IKAnalyzer下載地址:IKAnalyzer 3.2.8

   2、添加IKAnalyzer3.2.8.jar

       把IKAnalyzer3.2.8.jar放到 tomcat-7.0.14\webapps\solr\WEB-INF\lib下;

   3、schema.xml 增加信息

    進入目錄編輯schema.xml文件,在<Types>下添加以下內容: 


<fieldType name="text" 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>

然后在<fields>下添加:

<field name="name1" type="text" indexed="true" stored="true" required="true" />

5、重新tomcat 在瀏覽器中輸入:http://localhost:80/solr/analysis.jsp  進去 solr admin 顯示:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM