最近,我收到了地图任务尝试超时错误。我已经更改了mapreduce.task.timeout=1800000
次或更长时间,但我的问题仍然存在。
有人可以帮我这个吗?
背景:
我使用Nutch抓取网站,在generate
阶段地图任务失败。 crawldb中的每个部分大约是10~20G。节点之间的资源(内存和CPU核心)有很大差距。
答案 0 :(得分:0)
每部分CrawlDb 10-20 GB听起来很多,但也取决于部分是否可拆分(参见mapreduce.input.fileinputformat.split.minsize
和mapreduce.output.fileoutputformat.compress.codec
)。
我最喜欢的" CrawlDb的设置是
-Dmapreduce.job.reduces=XXX
相应地将减速器数量设置为写入CrawlDb的所有作业(updatedb,inject,mergedb,dedup),大约1GB(压缩bzip2)但是,要为群集设置和硬件找到最佳选项,可能需要进行一些实验。只需确保没有任务花费太长时间并占据作业执行时间。