[Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 單機(jī)指南(二)


可喜可賀寫(xiě)到了第二篇,照這個(gè)勢(shì)頭都可以去寫(xiě)論文了。我的委托人小Y明明計(jì)科系出身,看來(lái)上學(xué)時(shí)期肯定腦瓜里都是薔薇色的,才傻傻來(lái)找本熊幫忙??上П拘苌蠈W(xué)時(shí)期都是節(jié)能減排型的,通關(guān)模式向來(lái)選Easy,但為了可以愉快的勒索小Y的午餐,本熊也是夠拼了。


純初學(xué)者說(shuō)明模式
本章節(jié)主講實(shí)現(xiàn)本地模式

  • Solr4.10與Tomcat集成
  • 刪除Solr索引的方法
  • 一點(diǎn)有效但不實(shí)用的小技巧

1.Solr與Tomcat集成

集成的原因,初學(xué)者的可能會(huì)好奇Solr與Tomcat兩個(gè)都是可以作為服務(wù)器,為啥不單用Solr呢?

單獨(dú)啟動(dòng)Solr也可以,但原因在于將來(lái)實(shí)現(xiàn)的不是這樣的偽集群模式,Solr在搜索引擎中的作用是建立索引,而管理集群的工作則交給了zookeeper,而載體就是Tomcat

可以參照前一章的步驟完成準(zhǔn)備工作,接下來(lái)就可以正式開(kāi)工了

1.1 解壓Tomcat與solr

這里的路徑隨意,本熊假設(shè)Tomcat的主目錄為T(mén)omcatPath,Solr的主目錄為SolrPath,Nutch的解壓后的主目錄為NutchPath

以下是本熊的解壓位置:
TomcatPath的值就是 /home/as/workspace/tomcat
SolrPath的值就是 /home/as/下載/solr-4.10.3
NutchPath的值就是 /usr/Dzy/apache-nutch-2.3.1

各位看官可以看自己的解壓位置替換,本熊只為方便說(shuō)明。

  • 在TomcatPath下的/webapps文件夾內(nèi)新建名叫solr文件夾

  • 在SolrPath下路徑/example/webapps有名為solr.war的壓縮文件,將其復(fù)制到剛才新建的solr文件夾內(nèi)

  • 在當(dāng)前目錄將solr.war解壓

    完成圖

    本熊請(qǐng)各位務(wù)必注意路徑,本熊將截圖包括路徑,各位可以根據(jù)自身情況稍加推理,找到正確的位置。

  • 將SolrPath下的/example內(nèi)的solr文件夾復(fù)制到TomcatPath路徑下,如圖

    完成圖2

  • 在NutchPath下的/conf中的schema.xml文件,復(fù)制到TomcatPath下的/solr/collection1/conf內(nèi)覆蓋原文件

這樣第一步準(zhǔn)備工作就算完成啦,至于為什么復(fù)制Nutch的
schema.xml文件呢?了解過(guò)MYSQL的人肯定看這個(gè)詞很眼熟,這就是告知solr服務(wù)器需要保留哪些類(lèi)型數(shù)據(jù)的配置文件

1.2 修改solr的配置文件

此處的目的在于修改solr的配置文件,使其能準(zhǔn)確的找到core的位置,本熊推測(cè)core的作用正是像處數(shù)據(jù)理機(jī)一樣,里面集成了分詞器等,使其可以可以建立索引。

  • 在TomcatPath下/webapps/solr/WEB-INF的文件內(nèi)修改web.xml文件,將選取部分的注釋取消(將開(kāi)頭 ````消除即可)
    修改web.xml

正確的寫(xiě)法是

   <env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>/home/as/workspace/tomcat/solr</env-entry-value>
       <env-entry-type>java.lang.String</env-entry-type>
   </env-entry>

<env-entry-value>標(biāo)簽下寫(xiě)的是步驟1.1的最后一步復(fù)制的solr文件所在的路徑,不是solr.war的解壓路徑

1.3 啟動(dòng)solr

  • 在TomcatPath目錄下執(zhí)行以下命令,啟動(dòng)Tomcat
    bash startup.sh
  • 然后在瀏覽器中輸入以下網(wǎng)址
    http://localhost:8080/solr/
成功啟動(dòng)后的樣子

如果終端顯示了Permission denied,這就是權(quán)限不夠,拒絕執(zhí)行的意思

    su

本熊就用的這個(gè)命令來(lái)提升權(quán)限吧

2.刪除Solr索引

本熊簡(jiǎn)單介紹一下為什么要?jiǎng)h除,因?yàn)樵趯?shí)驗(yàn)中Nutch抓取后,將抓取到數(shù)據(jù)存儲(chǔ)到Hbase(也可以是其他的數(shù)據(jù)庫(kù))

然后由Solr來(lái)生成索引執(zhí)行查詢,如果不刪除,那么將永遠(yuǎn)保留著第一次抓取的結(jié)果,無(wú)法查詢今后的抓取結(jié)果

  • Core selector的下拉欄中選擇Collection1,然后再選取Documents,將右側(cè)的Documents Type選為XML,如下圖
    http://localhost:8080/solr/#/collection1/documents
  • 然后在下面文本域中輸入
    <delete><query>:</query></delete>
    <commit/>
    點(diǎn)擊Submit Document執(zhí)行,這句話用于清除所有索引,各位可以按需要?jiǎng)h除指定的索引,這個(gè)得去問(wèn)Google,本熊是實(shí)用派的

3.查詢Nutch抓取的數(shù)據(jù)

如果完成了Nutch的抓取流程,這里可以看見(jiàn)抓取的結(jié)果,當(dāng)然如果沒(méi)有執(zhí)行過(guò),里面是什么都查不出來(lái)的

所以耐心的跟著本熊往下走完成以后的指南,本熊保證不出大意外,一定會(huì)看見(jiàn)的。

  • Core selector的下拉欄中選擇Collection1,然后再選取Query,點(diǎn)擊右側(cè)Execute Query,如下圖
    http://localhost:8080/solr/#/collection1/query

各位看官也可按需要調(diào)整查詢參數(shù),語(yǔ)法也是很簡(jiǎn)單的,本熊建議各位少年少女們好好利用百度吧,多查一查也不會(huì)有在下百度查我干嘛的的橋段的。

再次提醒 版本正確,版本正確,版本正確,在下版本有何貴干?不吐槽了,本熊就是在Nutch抓取成功后,卻看不到solr上有任何數(shù)據(jù),后來(lái)查明就是用了高版本的solr,希望各位少撞點(diǎn)墻了,能保證指甲頭發(fā)的正常生長(zhǎng)。


第二期完

本期可是之后完成Nutch抓取后的重要的檢測(cè)工作,只有查詢時(shí)看到了結(jié)果才算成功。在看到從沒(méi)有到出現(xiàn),那個(gè)成就感都讓本熊差點(diǎn)忘了目的是刷小Y好感度了。

確實(shí)作為程序熊,成就感十分重要,在不知不覺(jué)接受越來(lái)越厲害的項(xiàng)目時(shí),各位還能找到這份最初的愉悅嗎?

下一期講Hadoop與Hbase的配置

相關(guān)內(nèi)容
[Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 單機(jī)指南(一)
[Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 單機(jī)指南(二)
[Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 單機(jī)指南(三)
[Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 單機(jī)指南(四)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容