2013-01-18 88 views
1

我使用nutch 1.5和solr 3.5。我想知道通過nutch更新solr索引的最佳方法。 nutch中的seedlist.txt包含大約一百萬個URL。新的網址將每天添加。此外,一些網址將被刪除或更新。由nutch更新solr索引

nutch命令「./nutch crawl urls -solr/solr/-dir crawl -depth 1 -topN 10」將拾取新添加的索引鏈接。但是,更新和移除的網址根本不會被觸及。

通過刪除爬網文件夾並再次重新索引將修復「添加」和「更新」問題。然而,抓取一百萬個網址需要很長時間,而「刪除」網址索引仍然在Solr中。

唯一想知道刪除Solr的索引使用update命令,如「更新提交=真正& stream.body = ID:XXXX」。

我在正確的方向嗎?或者有更好的方法來做到這一點?

回答

0

你幾乎可以肯定需要在現有的crawldb(lookup bin/nutch inject)中注入新的url,你也可以發出bin/nutch readdb ... -dump dumpfolder - 這會告訴你它將會持續多久直到那些舊的網址再次被抓取。

0

您可以更改已變爲不活動或已刪除的URL的設置,因此當您嘗試重新抓取它們時,會將它們標記爲DB_GONE。根據您自己的選擇,更改此設置將會刪除這些網址。

<property> 
    <name>db.update.purge.404</name> 
    <value>true</value> 
    <description>If true, updatedb will add purge records with status DB_GONE 
    from the CrawlDB. 
    </description> 
</property> 

更多細節

退房 http://amac4.blogspot.com/2013/08/nutch-re-crawling.html