Hadoop 常见出错信息及处理方法

本文解析了MapReduce中两种常见错误代码:PipeMapRed.waitOutputThreads():subprocessfailedwithcode1 和 subprocessfailedwithcode137。介绍了如何查找Python执行中的报错信息,并提供了超出内存限制时的解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

错误代码1:PipeMapRed.waitOutputThreads(): subprocess failed with code 1

错误说明:mapper或reducer执行中报错。python的报错日志可以通过如下方式找到:

点击导致作业失败的task连接

点击任务列表最右边的last 8kb

点击 stderr

即可看到python执行中的报错信息了

错误代码137:PipeMapRed.waitOutputThreads(): subprocess failed with code 137

错误说明:作业的 reduce 程序运行过程中使用的内存超出平台内存限制被强制杀掉,平台默认配置内存限制为800MB

解决方案: 建议用户首先考虑优化 reduce 程序的内存使用。 另外,用户也可以通过调整参数设置更大的 reduce 程序内存上限,具体如下:

(1) streaming类作业,可通过 stream.memory.limit 参数设置 map/reduce task 的内存上限。

(2) hce类作业,可通过 hadoop.hce.memory.limit 参数设置 map/reduce task 的内存上限。 注意:map或reduce程序使用的内存越大,则用户队列中可执行的 map/reduce task 数目就越少。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值