在Eclipse中運行Solr 基礎(chǔ)知識
更新時間:2012年11月13日 13:52:53 作者:
Solr我還是個菜鳥,寫這一些文章只是記錄一下最近一段時間學習Solr的心得,望各位同仁不要見笑,還希望多多指點
Solr我還是個菜鳥,寫這一些文章只是記錄一下最近一段時間學習Solr的心得。
Solr是什么?
最近我學Solr的時候,一直看到一句話,Solr 是一個可供企業(yè)使用的、基于 Lucene 的開箱即用的搜索服務(wù)器。當時想了很久沒看懂這句話是什么意思,什么是搜索服務(wù)器?當接觸的深了才發(fā)現(xiàn),所謂的搜索服務(wù)器,就是能夠在服務(wù)器(Tomcat,Jetty)中運行的搜索程序的一個工程。
Solr能做什么?
了解過Lucene的人都知道,Lucene在做兩件事情,索引管理與搜索,Solr同樣也不例外,做的也是這兩件事情,只不過使之更加簡單化。
如果對Lucene還不太了解,推薦看一下覺先的博客:http://www.cnblogs.com/forfuture1978/category/300665.html,這篇博客對于我剛剛接觸全文檢索的時候幫助很大,另外推薦一本書,英文版Lucene In Action,中文版Lucene實戰(zhàn)。
下面,切入正題,既然Solr是一個搜索服務(wù)器,我們當然需要它能夠在我們的Eclipse里進行管理,我就寫一下我的一些心得吧。
在Eclipse中運行Solr
1.下載solr完整包,我用的是Solr 3.6.1;
2.在Eclipse中新建一個Dynamic Web project項目,我的命名是solr,大家也可以這樣,如果不一樣,在你訪問的時候注意一下就好了。
3.刪除新建項目中的WebContent下的所有內(nèi)容,將下載的Solr完整包中的dist目錄下的apache-solr-3.6.1.war解壓,將里面的所有內(nèi)容復制到WebContent下,復制完成之后會有紅叉,別管了,就當沒看見。
4.指定solrHome,solrHome是存放solr核心配置文件與索引的地方。
打開WEB-INF/web.xml文件,添加以下節(jié)點:
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>E:/solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
其中env-entry-name必須是solr/home,env-entry-value節(jié)點是你要放置solr配置文件的地方。
5.添加solr配置文件
這里有兩種方法,自己建立或者是拷貝下載完整包中的核心配置文件。
第一種方法:拷貝,進入下載包中的example/mutiCore目錄下,可以看到有core1,core2,將此文件夾以及下面的solr.xml文件拷貝至solrHome。
第二種方法:(1).新建,進入solrHome,新建solr.xml文件,配置如下:
<?xml version="1.0" encoding="UTF-8" ?>
<solr persistent="false">
<cores adminPath="/admin/cores">
<core name="merchant" instanceDir="merchant" />
</cores>
</solr>
其中adminPath的文件如代碼所示,最好不要更改,core中name隨意,最好是有一定的實際意義的,instanceDir,這里指定了該core的目錄,這里配置了merchant,也就意味著是solrHome下的merchant目錄。
在這里解釋一下多核心配置,此處示例我只存放了一個core,因為我們的產(chǎn)品只需要對著一個merchant進行全文檢索。如果有需要,比如說還需對coupon等文件檢索的話,就需要配置多核。example/muticore文件夾下給出了多核的示例,大家可以參考一下。
(2).新建merchant目錄(與配置中的instanceDir一致),然后在merchant下新建conf目錄,在conf里新建兩個xml文件,分別是schema.xml,solrconfig.xml,這兩個xml的配置會在下篇博客中詳細講述,如果不知道如何配置,拷貝example/muticore/core1/conf里面的兩個文件進來即可。
6.在Eclipse中啟動solr
在servers窗口中new一個server,然后將剛剛新建的項目add進去;
修改端口,雙擊剛剛新建的服務(wù)器,在port里面修改HTTP/1.1的端口為8983,這里可以自定義,最好不要和你的其他項目重復。然后保存;
啟動服務(wù)器。
7.在瀏覽器中打開solr管理面板
打開以下地址,http://localhost:8983/solr/,然后你就可以看到Admin merchant選項了,點擊進入,就是剛剛配置的merchant core的管理面板。
Solr是什么?
最近我學Solr的時候,一直看到一句話,Solr 是一個可供企業(yè)使用的、基于 Lucene 的開箱即用的搜索服務(wù)器。當時想了很久沒看懂這句話是什么意思,什么是搜索服務(wù)器?當接觸的深了才發(fā)現(xiàn),所謂的搜索服務(wù)器,就是能夠在服務(wù)器(Tomcat,Jetty)中運行的搜索程序的一個工程。
Solr能做什么?
了解過Lucene的人都知道,Lucene在做兩件事情,索引管理與搜索,Solr同樣也不例外,做的也是這兩件事情,只不過使之更加簡單化。
如果對Lucene還不太了解,推薦看一下覺先的博客:http://www.cnblogs.com/forfuture1978/category/300665.html,這篇博客對于我剛剛接觸全文檢索的時候幫助很大,另外推薦一本書,英文版Lucene In Action,中文版Lucene實戰(zhàn)。
下面,切入正題,既然Solr是一個搜索服務(wù)器,我們當然需要它能夠在我們的Eclipse里進行管理,我就寫一下我的一些心得吧。
在Eclipse中運行Solr
1.下載solr完整包,我用的是Solr 3.6.1;
2.在Eclipse中新建一個Dynamic Web project項目,我的命名是solr,大家也可以這樣,如果不一樣,在你訪問的時候注意一下就好了。
3.刪除新建項目中的WebContent下的所有內(nèi)容,將下載的Solr完整包中的dist目錄下的apache-solr-3.6.1.war解壓,將里面的所有內(nèi)容復制到WebContent下,復制完成之后會有紅叉,別管了,就當沒看見。
4.指定solrHome,solrHome是存放solr核心配置文件與索引的地方。
打開WEB-INF/web.xml文件,添加以下節(jié)點:
復制代碼 代碼如下:
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>E:/solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
其中env-entry-name必須是solr/home,env-entry-value節(jié)點是你要放置solr配置文件的地方。
5.添加solr配置文件
這里有兩種方法,自己建立或者是拷貝下載完整包中的核心配置文件。
第一種方法:拷貝,進入下載包中的example/mutiCore目錄下,可以看到有core1,core2,將此文件夾以及下面的solr.xml文件拷貝至solrHome。
第二種方法:(1).新建,進入solrHome,新建solr.xml文件,配置如下:
復制代碼 代碼如下:
<?xml version="1.0" encoding="UTF-8" ?>
<solr persistent="false">
<cores adminPath="/admin/cores">
<core name="merchant" instanceDir="merchant" />
</cores>
</solr>
其中adminPath的文件如代碼所示,最好不要更改,core中name隨意,最好是有一定的實際意義的,instanceDir,這里指定了該core的目錄,這里配置了merchant,也就意味著是solrHome下的merchant目錄。
在這里解釋一下多核心配置,此處示例我只存放了一個core,因為我們的產(chǎn)品只需要對著一個merchant進行全文檢索。如果有需要,比如說還需對coupon等文件檢索的話,就需要配置多核。example/muticore文件夾下給出了多核的示例,大家可以參考一下。
(2).新建merchant目錄(與配置中的instanceDir一致),然后在merchant下新建conf目錄,在conf里新建兩個xml文件,分別是schema.xml,solrconfig.xml,這兩個xml的配置會在下篇博客中詳細講述,如果不知道如何配置,拷貝example/muticore/core1/conf里面的兩個文件進來即可。
6.在Eclipse中啟動solr
在servers窗口中new一個server,然后將剛剛新建的項目add進去;
修改端口,雙擊剛剛新建的服務(wù)器,在port里面修改HTTP/1.1的端口為8983,這里可以自定義,最好不要和你的其他項目重復。然后保存;
啟動服務(wù)器。
7.在瀏覽器中打開solr管理面板
打開以下地址,http://localhost:8983/solr/,然后你就可以看到Admin merchant選項了,點擊進入,就是剛剛配置的merchant core的管理面板。