1. 程式人生 > >Solr的安裝及配置

Solr的安裝及配置

1.1. 先介紹下什麼是solr

  Solr 是Apache下的一個頂級開源專案,採用Java開發,它是基於Lucene的全文搜尋伺服器。Solr提供了比Lucene更為豐富的查詢語言,同時實現了可配置、可擴充套件,並對索引、搜尋效能進行了優化。

  Solr可以獨立執行,執行在Jetty、Tomcat等這些Servlet容器中,Solr 索引的實現方法很簡單,用 POST 方法向 Solr 伺服器傳送一個描述 Field 及其內容的 XML 文件,Solr根據xml文件新增、刪除、更新索引 。Solr 搜尋只需要傳送 HTTP GET 請求,然後對 Solr 返回Xml、json等格式的查詢結果進行解析,組織頁面佈局。Solr不提供構建UI的功能,Solr提供了一個管理介面,通過管理介面可以查詢Solr的配置和執行情況。

  Solr與Lucene的區別:

    Lucene是一個開放原始碼的全文檢索引擎工具包,它不是一個完整的全文檢索引擎,Lucene提供了完整的查詢引擎和索引引擎,目的是為軟體開發人員提供一個簡單易用的工具包,以方便的在目標系統中實現全文檢索的功能,或者以Lucene為基礎構建全文檢索引擎。

     Solr的目標是打造一款企業級的搜尋引擎系統,它是一個搜尋引擎服務,可以獨立執行,通過Solr可以非常快速的構建企業的搜尋引擎,通過Solr也可以高效的完成站內搜尋功能。

1.2. solr的安裝及配置

  1.2.1.solr的下載

    從Solr官方網站(http://lucene.apache.org/solr/ )下載,Solr使用指南可參考:https://wiki.apache.org/solr/FrontPage(英文不方便看,可以使用谷歌翻譯)。

  1.2.1.solr的資料夾結構

         

    bin:solr的執行指令碼

    contrib:solr的外掛。

    dist:該目錄包含build過程中產生的war和jar檔案,以及依賴檔案。

    docs:solr的API文件

    example:solr工程的例子目錄

    licenses:solr相關的一些許可資訊

  1.2.1.solr整合Tomcat

    SolrHome與SolrCore:

      SolrHome是Solr執行的主目錄,目錄中包括了執行Solr例項所有的配置檔案和資料檔案,Solr例項就是SolrCore,一個SolrHome可以包括多個SolrCore(Solr例項),每個SolrCore提供單獨的搜尋和索引服務。

      example\solr是一個solr home目錄結構

      “collection1”是一個SolrCore(Solr例項)目錄

  說明:

    collection1:叫做一個Solr執行例項SolrCore,SolrCore名稱不固定,一個solr執行例項對外單獨提供索引和搜尋介面。

    solrHome中可以建立多個solr執行例項SolrCore。

    一個solr的執行例項對應一個索引目錄。

    conf是SolrCore的配置檔案目錄 。

    data目錄存放索引檔案需要建立

  1.2.1.整合步驟

    第一步:安裝tomcat。D:\temp\apache-tomcat-7.0.53

    第二步:把solr的war包複製到tomcat 的webapp目錄下。

    第三步:solr.war解壓。使用壓縮工具解壓或者啟動tomcat自動解壓。解壓之後刪除solr.war

    第四步:把\solr-4.10.3\example\lib\ext目錄下的所有的jar包新增到solr工程中

    第五步:配置solrHome和solrCore。

      1)建立一個solrhome(存放solr所有配置檔案的一個資料夾)。\solr-4.10.3\example\solr目錄就是一個標準的solrhome。

      2)把\solr-4.10.3\example\solr資料夾複製到D:\temp\0108路徑下,改名為solrhome,改名不是必須的,是為了便於理解。

      3)在solrhome下有一個資料夾叫做collection1這就是一個solrcore。就是一個solr的例項。一個solrcore相當於mysql中一個數據庫。Solrcore之間是相互隔離。

    第六步:告訴solr伺服器配置檔案也就是solrHome的位置。修改web.xml使用jndi的方式告訴solr伺服器。

    第七步:啟動tomcat

    第八步:訪問http://localhost:8080/solr/