1. 程式人生 > 實用技巧 >[筆記01]---solr

[筆記01]---solr

什麼是Solr

1、直接使用sql搜尋存在的問題

大多數搜尋引擎應用都必須具有某種搜尋功能搜尋功能往往是巨大的資源消耗它們由於沉重的資料庫載入而拖垮你的應用的效能所有我們一般在做搜尋的時候 會把它單獨轉移到一個外部的搜尋伺服器當中進行Apache Solr是一個流行的開源搜尋伺服器

2、Apache Solr

Solr是一個開源搜尋平臺,用於構建搜尋應用程式。是一個獨立的企業級搜尋應用伺服器,它對外提供類似於Web-service的API介面它建立在Lucene(全文搜尋引擎)之上。 Solr是企業級的,快速的和高度可擴充套件的。使用者可以通過http請求,向搜尋引擎伺服器提交一定格式的XML檔案,生成索引;也可以通過Http Get操作提出查詢請求,並得到XML格式的返回結果。

3、為什麼選擇Solr ?

第一點原因:來自SQL資料庫在效能上缺乏亮點。基本上,你需要在你的查詢中使用JOIN操作。第二點原因是文件的天然資料特性鬆散的文字檔案,這種查詢都是需要使用LIKE。然而joins和likes都是效能殺手,在目前的資料庫引擎中是不方便的。solr底層採用的是倒排索引。這種資料結構類似與美化過的詞典

4、Solr 關鍵特性

1.基於標準的開放介面:Solr搜尋伺服器支援通過XML、JSON和HTTP查詢和獲取結果。2.易管理:Solr可以通過HTML頁面管理,Solr配置通過XML完成。3.可伸縮性:能夠有效地複製到另外一個Solr搜尋伺服器。4.靈活的外掛體系:新功能能夠以外掛的形式方便的新增到Solr伺服器上。5.強大的資料匯入功能:資料庫和其他結構化資料來源現在都可以匯入、對映和轉化。

Solr安裝

 上傳安裝包[{'src':'xap:resources/cd60d0bfb611c878b3a92f8a1c1801c2644c6a6168690d565e565fe886b4d324.png','width':552,'height':36,'type':'image'}]  對以上內容進行解壓解壓tomcattar -zxvf apache-tomcat-8.5.32.tar.gz mv apache-tomcat-8.5.32 tomcat解壓solrtar -zxvf solr-4.10.3.tar解壓IK unzip IKAnalyzer.zip複製solr.war到tomcat/webapp下cd /usr/local/solr/solr-4.10.3/example/webapps/cp solr.war /usr/local/solr/tomcat/webapps/啟動tomcat讓solr.war自動解壓/usr/local/solr/tomcat/bin/startup.sh關閉tomcat/usr/local/solr/tomcat/bin/shutdown.sh進入到webapps刪除solr.war包cd /usr/local/solr/tomcat/webapps/rm -rf solr.war將solr-4.10.3/example/lib/ext/目錄下的所有jar包拷貝到/usr/local/solr/tomcat/webapps/solr/WEB-INF/lib目錄中cd /usr/local/solr/solr-4.10.3/example/lib/extcp *  /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib將solr-4.10.3/example/目錄下的solr資料夾複製到/usr/local/solr/目錄下並且重新命名為solrhomecd /usr/local/solr/solr-4.10.3/example/cp -r solr /usr/local/solr/mv solr solrhome配置tomcat/webapps/solr/WEB-INF/web.xml家的位置cd /usr/local/solr/tomcat/webapps/solr/WEB-INF/vim web.xml新增solrhome              [{'src':'xap:resources/6ca731cd4e60073f5b559331fb0d5d3a9f4b3d891a262784823172c4c1d34b05.png','width':451,'height':90,'type':'image'}]/usr/local/solr/solrhome啟動tomcat/usr/local/solr/tomcat/bin/startup.sh