Nutch + Solr - 清理需要很长时间才能完成
Nutch + Solr - Clean takes a very long time to complete
我正在使用 Apache Nutch + Solr 构建一个搜索引擎。
我正在使用 bin/crawl
脚本进行抓取和索引。我已经索引了大约 50,000 个文档,现在,在每次迭代中,cleaning phase
需要大约 6 分钟 才能完成(而之前的阶段大约需要 2 分钟).
查看 hadoop.log
文件时,我可以看到在每次迭代中,indexer.CleaningJob
阶段删除的文档总数都会增加(当前删除的文档数为 11,700)。
为什么需要这么长时间才能完成,我该怎么做才能解决这个问题?
如果能得到任何帮助,我将不胜感激!
选择哪些文档用于编制索引存在不对称性。清洁:
- 在每个抓取周期中,只有来自最后一个片段的文档是 indexed/updated,因为内容(已解析的数据和文本)是必需的
- 但是,CrawlDb 中包含的所有 404、重复、重定向等都将从索引中删除。虽然也可以使用基于 HTTP 响应状态的段删除 404 和重定向,但某些作业会修改 CrawlDb 中的状态(例如,根据内容签名检测重复项)。
随着时间的推移,CrawlDb 会增长并变得比单个段大得多。这会减慢清洁工作。您可以修改 bin/crawl 脚本,而不是每个周期都进行删除。
我正在使用 Apache Nutch + Solr 构建一个搜索引擎。
我正在使用 bin/crawl
脚本进行抓取和索引。我已经索引了大约 50,000 个文档,现在,在每次迭代中,cleaning phase
需要大约 6 分钟 才能完成(而之前的阶段大约需要 2 分钟).
查看 hadoop.log
文件时,我可以看到在每次迭代中,indexer.CleaningJob
阶段删除的文档总数都会增加(当前删除的文档数为 11,700)。
为什么需要这么长时间才能完成,我该怎么做才能解决这个问题?
如果能得到任何帮助,我将不胜感激!
选择哪些文档用于编制索引存在不对称性。清洁:
- 在每个抓取周期中,只有来自最后一个片段的文档是 indexed/updated,因为内容(已解析的数据和文本)是必需的
- 但是,CrawlDb 中包含的所有 404、重复、重定向等都将从索引中删除。虽然也可以使用基于 HTTP 响应状态的段删除 404 和重定向,但某些作业会修改 CrawlDb 中的状态(例如,根据内容签名检测重复项)。
随着时间的推移,CrawlDb 会增长并变得比单个段大得多。这会减慢清洁工作。您可以修改 bin/crawl 脚本,而不是每个周期都进行删除。