【solr基礎教程之一】Solr相關知識點串講
阿新 • • 發佈:2019-01-02
Solr是Apache Lucene的一個子專案。Lucene為全文搜尋功能提供了完備的API,但它只作為一個API庫存在,而不能直接用於搜尋。因此,Solr基於Lucene構建了一個完整的搜尋引擎,它可以為搜尋引擎新增文件,對文件內容進行分析,併為使用者提供搜尋功能,在此基礎上提供了一個擴充套件功能,如hit highline, suggetion等。
1、solr.xml
與整個搜尋引擎相關的配置。
2、solrconfig.xml。
與某個core相關的主要配置,如定義updatehandler用於索引檔案,requesthandler用於搜尋內容等。
3、schema.xml 定義了某型別文件的索引格式。 4、core.properties 記錄了一個core的基本資訊,除一個name為必備屬性外,其餘均為可選。
二、索引 索引,是將文件中的內容經過分析後,形成一個Term---Document的對映,並將其寫入索引檔案的過程,即說明哪些文件中包括某個詞彙。 (一)向搜尋引擎中提交文件的方法
1、命令列方式
使用example程式中提供的post.jar或者post.sh提供文件,它支援XML/JSON/CSV三種檔案格式。
如java -jar post.jar *.xml
但本質上,它只是將solr提供的API進行了封裝,最核心的類為SimplePostTool,此類呼叫了SolrJ的介面。
2、SolrJ
使用solr提供的API,進行文件的新增。
3、其它第三方工具
(1)Data Import Handler (DIH)
將外部資料匯入Solr,如網站、關係型資料庫等內容。
(2)ExtractingRequestHandler, aka Solr Cell
對Tika進行了封裝,可用於匯入富文字內容,如pdf,office等
(3)Nutch
抓取網頁並將其匯入solr。
三、分析
四、索引
五、擴充套件功能
一、概述
(一)基礎內容 1、Solr的版本號與Lucene的版本號保持一直,直到2014年7月,最新版本號為4.9.0。 2、Solr提供了一個example,可以簡單快速的搭建起搜尋環境。參見http://blog.csdn.net/jediael_lu/article/details/36419497 (二)配置檔案 Solr的關鍵配置檔案有以下三個: solr.xml—Defines properties related to administration, logging, sharding, and SolrCloud solrconfig.xml—Defines the main settings for a specific Solr core schema.xml—Defines the structure of your index, including fields and field types 啟動搜尋引擎時,伺服器按照以下順序匯入配置: (1)從全域性java系統屬性中檢視solr.solr.home,一般定義為:$SOLR_INSTALL/example/solr/。 (2)搜尋上述目錄中哪個子目錄中包含有 core.properties,每個 core.properties對應一個core。 (3)從 core.properties中找出name屬性,其值作為一個core。 (4)查詢這個core下面的conf子目錄,找到solrconfig.xml與schema.xml。3、schema.xml 定義了某型別文件的索引格式。 4、core.properties 記錄了一個core的基本資訊,除一個name為必備屬性外,其餘均為可選。
二、索引 索引,是將文件中的內容經過分析後,形成一個Term---Document的對映,並將其寫入索引檔案的過程,即說明哪些文件中包括某個詞彙。 (一)向搜尋引擎中提交文件的方法