solr的原理、用途、簡介啥的我就不說了,其他博客已經寫了很多。這裏ImportNew有個solr系列的文章很好,安利一波-->##點我點我##。
很多初學者碰到的第一個頭痛的問題,肯定是怎麼成功安裝並能使用。這裏先跟大家介紹一下再win下怎麼安裝solr搜索引擎。
1、下載solr
到apache的solr官網下載即可,附上鍊接-->#想下載就點我#
2、安裝
win的安裝很簡單,解壓即可。
3、啓動
由於solr自帶jetty容器,如果不想結合tomcat,解壓後直接啓動就可以。
爲避免路徑混淆,我們把solr解壓之後的路徑成爲{SOLR_PATH_HOME}
win打開cmd控制檯,路徑進入SOLR_PATH_HOME/bin。輸入命令:solr start即可啓動,默認的打開端口是8983,然後瀏覽器通過localhost:8983即可檢測是否啓動成功。如圖:
這裏就可以進入admin的管理界面。
是不是覺得炒雞簡單。但,這只是能跑起來,我們還需要使用它來搜索documents,而且這些document通常是我們自定義的結構。比如你想用它來實現圖書館的圖書搜索,那每一本書的信息就是一個document。書的信息肯定得包括書名、作者、庫存、ISBN、簡介等等。而且每一本的信息需要你去上傳到搜索引擎中,所以沒有一點配置怎麼說得過去。
4、配置solrHome
solrHome的概念這裏就不展開了。簡單來說他就是存具體document和索引的地方。
編輯SOLR_PATH_HOME\server\solr-webapp\webapp\WEB-INF\web.xml文件。說明solrHome的路徑,如下。
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>{SOLR_PATH_HOME}\server\solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
默認這個地方是被註釋的。5、創建core
一個solr可以支持建立多個庫,比如你想搜索書籍,也行搜索手錶。這時候可以新建兩個core。
在SOLR_PATH_HOME\server\solr下新建文件夾,例如mycore1。
將SOLR_PATH_HOME\server\solr\configsets\_default\conf 整個文件夾拷貝一份到mycore1下,並在mycore1下新建文件件data。
到admin管理頁面,增加core。如下圖:
在這裏配置基本的路徑信息。
6、在schema.xml中定義字段
document的結構需要自己在schema中定義。
<field name="bookinfo.author" type="text_en_splitting" indexed="true" stored="true"/>
<field name="bookinfo.book_isbn" type="string" indexed="true" stored="true"/>
<field name="bookinfo.book_name" type="string" indexed="true" stored="true"/>
<field name="bookinfo.intro" type="text_en" indexed="true" stored="true"/>
<field name="bookinfo.press" type="text_en" indexed="true" stored="true"/>
這裏推薦一篇別人的好blog#點我#另外,在管理頁面也是可以添加Field/Dynamic Field/Copy Field。
7、添加文檔到solr
在schema聲明好我們的文檔結構之後,就可以post文檔到搜索引擎了(類似於數據庫的insert)。先按照我們定義的結構構建一個測試document:
<add>
<doc>
<field name="id">9787115283993_1</field>
<field name="bookinfo.book_name">Node.js開發指南</field>
<field name="bookinfo.book_isbn">9787115283993</field>
<field name="bookinfo.author">郭家寶(BYVoid)</field>
<field name="bookinfo.press">人民郵電出版社</field>
</doc>
</add>
這裏也推薦一遍好blog#點我#post文檔有很多種方式,例如:
1)使用SOLR_PATH_HOME\bin\post
2)使用管理頁面post
8、查詢
使用管理界面可以輕鬆實現搜索查詢
q爲搜索某個Field關鍵字。
9、總結
至此,可以在win上使用solr了。但是往往我們生產環境服務器都是部署在linux上,而提交document、查詢搜索、更新等系列操作都是在程序中完成。所以本篇文章僅僅只是展示一下solr的基本用法。實際生產環境下篇文章再做詳細介紹。