繁体   English   中英

hadoop - 多个集群上的Map reduce

[英]hadoop - Map reduce on multiple cluster

我已经配置了Hadoop集群。 我有两台机器MAMB当我使用以下代码运行mapreduce程序

 hadoop  jar /HDP/hadoop-1.2.0.1.3.0.0-0380/contrib/streaming/hadoop-streaming-1.2.0.1.3.0.0-0380.jar  -mapper "python C:\Python33\mapper.py"  -reducer "python C:\Python33\redu.py"  -input "/user/XXXX/input/input.txt"  -output "/user/XXXX/output/out20131112_09"

其中:mapper - C:\\ Python33 \\ mapper.py和reducer C:\\ Python33 \\ redu.py在MB的本地磁盘中

UPDATE 在此输入图像描述

最后,我已经找到了错误。

MA-错误日志

stderr logs
python: can't open file 'C:\Python33\mapper.py': [Errno 2] No such file or directory
java.lang.RuntimeException: PipeMapRed.waitOutputThreads(): subprocess failed with code 2

mapper - C:\\ Python33 \\ mapper.py和reducer C:\\ Python33 \\ redu.py在MA的本地磁盘中 ,它不是MB

现在,我需要将我的m / r程序复制到MA,或者我该如何解决这个问题

映射器

import sys
for line in sys.stdin:
   line = line.strip()
   keys = line.split()
   for key in keys:
       value = 1
       print( '%s \t %d' % (key, value))

如果映射输入文件小于dfs.block.size则每个作业运行时最终只有一个任务。 对于小输入,您可以强制Hadoop以mapred.max.split.size值(小于dfs.block.size运行多个任务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM