首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >添加更多hadoop节点不会提高Nutch爬行速度。

添加更多hadoop节点不会提高Nutch爬行速度。
EN

Stack Overflow用户
提问于 2021-06-28 01:23:05
回答 1查看 62关注 0票数 0

我正在用Apache (1.18版本)爬行网页。

我认为添加更多hadoop节点会使Nutch爬行网页更快。

但是,它没有。当爬行有3个和5个datanodes时,几乎没有区别。

我添加了--num-获取器参数(值为5,因为我的hadoop数据阳极的数量也是5)。

请帮我找出问题所在。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-28 09:42:31

只有覆盖许多网站(主机/域)的广泛的web爬行才能从添加更多Hadoop节点中获益。如果只爬行少量站点,并行化将不会使Nutch更快。默认情况下,Nutch配置为彬彬有礼,不并行访问单个站点,并且在来自同一站点的连续获取之间等待。

但是有一些方法可以让Nutch更快地爬到一个网站上。

  1. 为了使单个获取器任务更快(并更积极地从单个主机(或域根据partition.url.mode的值)获取),需要调整以下配置属性:fetcher.server.delayfetcher.threads.per.queue和其他获取器属性。
  2. 为了允许更多的取取任务(Hadoop节点)并行地爬行相同的网站,需要修改URLPartitioner的getPartition方法,请参阅这一讨论

请注意,在未经同意的情况下,让Nutch更咄咄逼人可能会导致爬行网站管理员的抱怨,并增加被屏蔽的可能性!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68156543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档