Apache Solr7.4 入門教程(一)
一、 Apache Solr 簡介
Apache Solr 是Apache Lucene專案的開源企業搜尋平臺。其主要功能包括全文檢索、命中標示、分面搜尋、動態聚類、資料庫整合,以及富文字(如Word、PDF)的處理。Solr是高度可擴充套件的,並提供了分散式搜尋和索引複製。Solr是最流行的企業級搜尋引擎,Solr 4還增加了NoSQL支援,還支援REST風格API。支援強大的匹配能力,如短語,萬用字元,連線,分組和更多不同的資料型別。它使用 Apache Zookeeper特別針對高流量進行優化。Apache Solr提供各式各樣的功能,我們列出了部分最主要的功能。
先進的全文搜尋功能。
XML,JSON和HTTP - 基於開放介面標準。
高度可擴充套件和容錯。
同時支援模式和無模式配置。
分頁搜尋和過濾。
支援像英語,德語,中國,日本,法國和許多主要語言
豐富的文件分析。
Solr是用Java編寫、執行在Servlet容器(如Apache Tomcat或Jetty)的一個獨立的全文搜尋伺服器。 Solr採用了Lucene Java搜尋庫為核心的全文索引和搜尋,並具有類似REST的HTTP/XML和JSON的API。 Solr強大的外部配置功能使得無需進行Java編碼,便可對其進行調整以適應多種型別的應用程式。Solr有一個外掛架構,以支援更多的高階定製。
因為2010年Apache Lucene和Apache Solr專案合併,兩個專案是由同一個Apache軟體基金會開發團隊製作實現的。提到技術或產品時,Lucene/Solr或Solr/Lucene是一樣的。
二、下載與安裝
1、 安裝jdk 1.8 環境
solr是java開發的,執行要有java環境。由於Apache Solr 是自帶web容器Jetty伺服器,所以不需要安裝其他web容器。
2、下載 Solr
Apache Solr 官網下載:http://lucene.apache.org/solr/downloads.html
3、安裝 Solr
下載完成後會得到一個壓縮包,解壓後會獲得一個solr-7.4.0資料夾,此資料夾目錄結構如下圖
資料夾 說明
bin solr的執行指令碼
contrib Solr的一些擴充套件jar包,包括分詞器,聚類,語言識別,資料匯入處理,非結構化內容分析等.
└─ analysis-extras 包含一些文字分析元件及其依賴
├─ clustering 包含一個用於叢集搜尋結果的引擎
├─ dataimporthandler 空
├─ dataimporthandler-extras 把資料從資料庫或其它資料來源匯入到solr
├─ extraction 整合了Apache Tika。Tika是用於解析一些富文字(諸如Word,PDF)的框架
├─ langid 檢測將要索引的資料的語言
├─ ltr 空
├─ prometheus-exporter 日誌的輸出
├─ uima 包含用於整合Apache UIMA(文字元資料提取的框架)類庫
└─ velocity 包含基於Velocity模板的簡單的搜尋UI框架
dist 該目錄包含執行solr的jar檔案,以及相關的依賴jar檔案
docs solr 的API文件
example solr 示例程式
licenses solr用到的一些證書
server solr 核心資料夾
└─ contexts Solr運行於Jetty下時的配置檔案
├─ etc Jetty的配置
├─ lib 關於Jetty與metrics的依賴
├─ logs 日誌檔案
├─ modules
├─ resources Log4j的配置檔案
├─ scripts scripts
├─ solr 所有構建的 索引庫
├─ configsets 示例配置檔案
└─ solr-webapp Jetty釋出的解壓war後的檔案
start.jar solr 啟動程式
三、執行solr
Solr的執行分為單機執行和叢集執行,這裡以單機為例: 在bin目錄下執行 solr start -p 8888
如圖這句提示出現後證明服務啟動成功(啟動過程中如果列印java異常堆疊log4j2.xml 檔名、目錄名或卷標語法不正確。沒有關係不妨礙我們正常使用solr可以忽略此問題),接下來在瀏覽器輸入http://localhost:8888/solr可以進入Admin UI介面驗證是否啟動成功如下圖
solr常用命令:
solr start –p <埠號> 單機版啟動solr服務
solr restart –p <埠號> 重啟solr服務
solr stop –p <埠號> 關閉solr服務
solr create –c <name> 建立一個core例項
此外有關於solr叢集版啟動方式和其他更多的命令可以參看官方文件。