我编写了几个可以工作的RHadoop程序,即使它们返回警告,例如:
Converting to.dfs argument to keyval with a NULL key
使用to.dfs。
输入数据时然而,一些程序失败致命,除了
之外没有任何警告Converting to.dfs argument to keyval with a NULL key
接着是
ERROR streaming.StreamJob: Job not successful. Error: # of failed Map Tasks exceeded allowed limit. FailedCount: 1.
NULL键警告通常与失败的Map任务相关联吗?
我知道标准建议是查看stderr,但失败作业的stderr是空的!零线,零个字符。
答案 0 :(得分:1)
据我所知,
使用NULL键将to.dfs参数转换为keyval
是一种常见的警告,它不会使作业失败。
您是否尝试使用from.dfs命令获取存储在to.dfs命令中的数据以查看它是否有效?如果确实如此,问题可能就在这里。
答案 1 :(得分:1)
我认为这个问题是流式传输,我在R终端中使用此行时出现此问题可能会对您有所帮助 Sys.setenv(HADOOP_HOME = '/ usr / lib中/ Hadoop的0.20-映射精简') Sys.setenv(HADOOP_CMD = '的/ usr /斌/ hadoop的') Sys.setenv(HADOOP_STREAMING ='/ usr / lib / hadoop-0.20-mapreduce / contrib / streaming / hadoop-streaming-2.0.0-mr1-cdh4.1.1.jar')
流式传输可能因您的jar文件而异。例如/usr/lib/hadoop/contrib/streaming/hadoop-streaming-1.0.2.jar是我的jar ...您可以通过路径查看。