最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

【Nutch2.2.1基礎(chǔ)教程之2.1】集成Nutch/Hbase/Solr構(gòu)建搜索引擎

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-09 15:57:24
文檔

【Nutch2.2.1基礎(chǔ)教程之2.1】集成Nutch/Hbase/Solr構(gòu)建搜索引擎

【Nutch2.2.1基礎(chǔ)教程之2.1】集成Nutch/Hbase/Solr構(gòu)建搜索引擎:1、下載相關(guān)軟件,并解壓 版本號如下: (1)apache-nutch-2.2.1 (2) hbase-0.90.4 (3)solr-4.9.0 并解壓至/usr/search 2、Nutch的配置 (1)vi /usr/search/apache-nutch-2.2.1/conf/nutch-site.xml proper
推薦度:
導(dǎo)讀【Nutch2.2.1基礎(chǔ)教程之2.1】集成Nutch/Hbase/Solr構(gòu)建搜索引擎:1、下載相關(guān)軟件,并解壓 版本號如下: (1)apache-nutch-2.2.1 (2) hbase-0.90.4 (3)solr-4.9.0 并解壓至/usr/search 2、Nutch的配置 (1)vi /usr/search/apache-nutch-2.2.1/conf/nutch-site.xml proper

1、下載相關(guān)軟件,并解壓 版本號如下: (1)apache-nutch-2.2.1 (2) hbase-0.90.4 (3)solr-4.9.0 并解壓至/usr/search 2、Nutch的配置 (1)vi /usr/search/apache-nutch-2.2.1/conf/nutch-site.xml propertynamestorage.data.store.class/namevalueorg


1、下載相關(guān)軟件,并解壓

版本號如下:

(1)apache-nutch-2.2.1

(2) hbase-0.90.4

(3)solr-4.9.0

并解壓至/usr/search


2、Nutch的配置

(1)vi /usr/search/apache-nutch-2.2.1/conf/nutch-site.xml


storage.data.store.class
org.apache.gora.hbase.store.HBaseStore
Default class for storing data

(2)vi /usr/search/apache-nutch-2.2.1/ivy/ivy.xml

默認(rèn)情況下,此語句被注釋掉,將其注釋符號去掉,使其生效。

 

(3)vi /usr/search/apache-nutch-2.2.1/conf/gora.properties

添加以下語句:

gora.datastore.default=org.apache.gora.hbase.store.HBaseStore

以上三個步驟指定了使用HBase來進(jìn)行存儲。

以下步驟才是構(gòu)建基本Nutch的必要步驟。

(4)構(gòu)建runtime

cd /usr/search/apache-nutch-2.2.1/

ant runtime

(5)驗證Nutch安裝完成

[root@jediael44 apache-nutch-2.2.1]# cd /usr/search/apache-nutch-2.2.1/runtime/local/bin/
[root@jediael44 bin]# ./nutch
Usage: nutch COMMAND
where COMMAND is one of:
inject inject new urls into the database
hostinject creates or updates an existing host table from a text file
generate generate new batches to fetch from crawl db
fetch fetch URLs marked during generate
parse parse URLs marked during fetch
updatedb update web table after parsing
updatehostdb update host table after parsing
readdb read/dump records from page database
readhostdb display entries from the hostDB
elasticindex run the elasticsearch indexer
solrindex run the solr indexer on parsed batches
solrdedup remove duplicates from solr
parsechecker check the parser for a given url
indexchecker check the indexing filters for a given url
plugin load a plugin and run one of its classes main()
nutchserver run a (local) Nutch server on a user defined port
junit runs the given JUnit test
or
CLASSNAME run the class named CLASSNAME
Most commands print help when invoked w/o parameters.


(6)vi /usr/search/apache-nutch-2.2.1/runtime/local/conf/nutch-site.xml 添加搜索任務(wù)


http.agent.name
My Nutch Spider

(7)創(chuàng)建seed.txt

cd /usr/search/apache-nutch-2.2.1/runtime/local/bin/

vi seed.txt

http://nutch.apache.org/


(8)修改網(wǎng)頁過濾器 vi /usr/search/apache-nutch-2.2.1/conf/regex-urlfilter.txt

vi /usr/search/apache-nutch-2.2.1/conf/regex-urlfilter.txt

# accept anything else
+.

修改為

# accept anything else
+^http://([a-z0-9]*\.)*nutch.apache.org/


(9)增加索引內(nèi)容

默認(rèn)情況下,schema.xml文件中的core及index-basic中的field才會被索引,為索引更多的field,可以通過以下方式添加。

修改nutch-default.xml,新增以下紅色內(nèi)容

plugin.includes

protocol-http|urlfilter-regex|parse-(html|tika)|index-(basic|anchor)|urlnormalizer-(pass|regex|basic)|scoring-opic|index-anchor|index-more|languageidentifier|subcollection|feed|creativecommons|tld

Regular expression naming plugin directory names to

include. Any plugin not matching this expression is excluded.

In any case you need at least include the nutch-extensionpoints plugin. By

default Nutch includes crawling just HTML and plain text via HTTP,

and basic indexing and search plugins. In order to use HTTPS please enable

protocol-httpclient, but be aware of possible intermittent problems with the

underlying commons-httpclient library.

或者可以在nutch-site.xml中添加plugin.includes屬性,并將上述內(nèi)容復(fù)制過去。注意,在nutch-site.xml中的屬性會代替nutch-default.xml中的屬性,因此必須將原有的屬性也復(fù)制過去。



3、Hbase的配置

(1)vi /usr/search/hbase-0.90.4/conf/hbase-site.xml





hbase.rootdir



hbase.zookeeper.property.dataDir



注:此步驟可不做。若不做,則使用hbase-default.xml(/usr/search/hbase-0.90.4/src/main/resources/hbase-default.xml)中的默認(rèn)值。

默認(rèn)值為:

 
 hbase.rootdir
 file:///tmp/hbase-${user.name}/hbase
 The directory shared by region servers and into
 which HBase persists. The URL should be 'fully-qualified'
 to include the filesystem scheme. For example, to specify the
 HDFS directory '/hbase' where the HDFS instance's namenode is
 running at namenode.example.org on port 9000, set this value to:
 hdfs://namenode.example.org:9000/hbase. By default HBase writes
 into /tmp. Change this configuration else all data will be lost
 on machine restart.
 
 
即默認(rèn)情況下會放在/tmp目錄,若機(jī)器重啟,有可能數(shù)據(jù)丟失。

但是建議還是把這些屬性做好配置,尤其是第二個關(guān)于zoopkeeper的,否則會導(dǎo)致各種問題。以下將目錄配置在本地文件系統(tǒng)中。



hbase.rootdir
file:///home/jediael/hbaserootdir


hbase.zookeeper.property.dataDir
file:///home/jediael/hbasezookeeperdataDir



注意,若無前綴file://,則默認(rèn)是hdfs://

但在0.90.4版本,默認(rèn)還是本地文件系統(tǒng)。



4、Solr的配置

(1)覆蓋solr的schema.xml文件。(對于solr4,應(yīng)該使用schema-solr4.xml)

cp /usr/search/apache-nutch-2.2.1/conf/schema.xml /usr/search/solr-4.9.0/example/solr/collection1/conf/

(2)若使用solr3.6,則至此已經(jīng)完成配置,但使用4.9,需要修改以下配置:

修改上述復(fù)制過來的schema.xml文件

刪除:

增加:


5、啟動抓取任務(wù)

(1)啟動HBase

[root@jediael44 bin]# cd /usr/search/hbase-0.90.4/bin/
[root@jediael44 bin]# ./start-hbase.sh

(2)啟動Solr

[root@jediael44 bin]# cd /usr/search/solr-4.9.0/example/
[root@jediael44 example]# java -jar start.jar

(3)啟動Nutch,開始抓取任務(wù)

[root@jediael44 example]# cd /usr/search/apache-nutch-2.2.1/runtime/local/bin/
[root@jediael44 bin]# ./crawl seed.txt TestCrawl http://localhost:8983/solr 2

大功告成,任務(wù)開始執(zhí)行。


關(guān)于上述過程的一些分析請見:

集成Nutch/Hbase/Solr構(gòu)建搜索引擎之二:內(nèi)容分析

http://blog.csdn.net/jediael_lu/article/details/37738569


使用crontab來設(shè)置Nutch的例行任務(wù)時,出現(xiàn)以下錯誤

JAVA_HOME is not set。

于是創(chuàng)建了一個腳本,用于執(zhí)行抓取工作:

#!/bin/bash
export JAVA_HOME=/usr/java/jdk1.7.0_51
/opt/jediael/apache-nutch-2.2.1/runtime/local/bin/crawl /opt/jediael/apache-nutch-2.2.1/runtime/local/urls/ mainhttp://localhost:8080/solr/ 2 >> ~jediael/nutch.log

然后再配置例行任務(wù)

30 0,6,8,10,12,14,16,18,20,22 * * * bash /opt/jediael/apache-nutch-2.2.1/runtime/local/bin/myCrawl.sh

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

【Nutch2.2.1基礎(chǔ)教程之2.1】集成Nutch/Hbase/Solr構(gòu)建搜索引擎

【Nutch2.2.1基礎(chǔ)教程之2.1】集成Nutch/Hbase/Solr構(gòu)建搜索引擎:1、下載相關(guān)軟件,并解壓 版本號如下: (1)apache-nutch-2.2.1 (2) hbase-0.90.4 (3)solr-4.9.0 并解壓至/usr/search 2、Nutch的配置 (1)vi /usr/search/apache-nutch-2.2.1/conf/nutch-site.xml proper
推薦度:
標(biāo)簽: 教程 基礎(chǔ) 2.2
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top