在Windows上进行Python Hadoop流式处理,脚本不是有效的Win32应用程序 [英] Python Hadoop streaming on windows, Script not a valid Win32 application
问题描述
使用Hadoop streaming.jar在Hadoop上执行mapreduce python文件存在问题。
我使用:
Windows 10 64bit
Python 3.6和我的IDE是Spyder 3.2.6,
Hadoop 2.3.0
jdk1.8.0_161
我可以得到答案,而我的maduducec代码是用java语言编写的,但是我的问题是当我想在我的数据上混合使用像tensorflow或其他有用的机器学习库这样的python库。
安装hadoop 2.3.0 :
1. hadoop-env
export JAVA_HOME = C:\Java\jdk1.8.0_161
2.我在hadoop文件夹中创建了数据 - > dfs
-
对于环境
用户变量
Hadoop_Home = D: \hadoop
Java_Home = C:\Java\jdk1.8.0_161
M2_HOME = C:\ apache-maven-3.5.2\apache-maven-3.5.2-bin\ Maven-3.5.2
Platform = x64
- 我使用Hadoop版本2.7.2,配置* .xml的配置几乎相同。
- 我删除了
# !/ usr / bin / python3
- 我删除了
For environment User Variable
Hadoop_Home = D:\hadoop Java_Home = C:\Java\jdk1.8.0_161 M2_HOME = C:\apache-maven-3.5.2\apache-maven-3.5.2-bin\Maven-3.5.2 Platform = x64
- I used Hadoop version 2.7.2 with almost same configuration for *.xml.
- I removed
#!/usr/bin/python3
from top of my python code.
系统变量:
将路径编辑为:
D:\hadoop\\ bin
C:\java\jdk1.8.0_161\bin
C:\ProgramData\Anconda3
我的MapReduce Python代码:
D:\digit\wordcount-mapper.py
#!/ usr / bin / python3
为sys.stdin中的行导入sys
:
line = line.strip()#删除前导和尾随空白
words = line.split()#将单词划分为单词
:b $ b print('%s\t%s'%(word,1))
<$从运算符导入itemgetter
导入sys
current_word = None
current_count = 0
从运算符导入p $ p> #!/ usr / bin / python3
word = None
用于sys.stdin中的行:
line = line.strip()
word,count = line.split('\ t',1)
try :
count = int(count)
除了ValueError:
继续
如果current_word == wor d:
current_count + = count
else:
如果current_word:
print('%s\t%s'%(current_word,current_count))
current_count = count
current_word = word
if current_word == word:
print('%s\t%s'%(current_word,current_count))
$ c $
d:\hadoop\bin> hadoop namenode -format
D:\hadoop\sbin> start-dfs.cmd
D:\hadoop\sbin> start-yarn.cmd
我检查了:localhost:8088 /和 http:/ / localhost:50070
一切正常。
D:\ haddoop \sbin> hadoop fs -mkdir -p / input
D:\ haddoop \sbin> hadoop fs -copyFromLocal D:\digit\\ \\ mahsa.txt / input
D:\hadoop\sbin> D:\hadoop\bin\hadoop jar D:\hadoop\share\hadoop\tools\lib\ hadoop-streaming-2.3.0.jar -file D:\digit\wordcount-mapper.py -mapper D:\digit\wordcount-mapper.py -file D:\digit\wordcount-reducer。 py -reducer D:\digit\wordcount-reducer.py -input /input/mahsa.txt/ -output / output /
我有这个错误:
18/02/21 21:49:24 WARN strea ming.StreamJob:-file选项已弃用,请改为使用通用选项-files。
packageJobJar:[D:\digit\wordcount-mapper.py,D:\digit\wordcount-reducer.py,/ D:/ tmp / hadoop -Mahsa / hadoop-unjar7054071292684552905 /] [] C:\ Users \Mahsa\AppData\Local\Temp\streamjob2327207111481875361.jar tmpDir = null
18/02/21 21:49:25 INFO client.RMProxy:连接到ResourceManager在/0.0 .0.0:8032
18/02/21 21:49:25 INFO client.RMProxy:连接到ResourceManager,位于/0.0.0.0:8032
18/02/21 21:49:28信息mapred。 FileInputFormat:处理的总输入路径:1
18/02/21 21:49:28信息mapreduce.JobSubmitter:分割数量:2
18/02/21 21:49:29信息mapreduce。 JobSubmitter:提交作业的标记:job_1519235874088_0003
18/02/21 21:49:29信息impl.YarnClientImpl:提交的应用程序application_1519235874088_0003
18/02/21 21:49:29信息mapreduce.Job:The URL跟踪工作:http:// Mahsa:8088 / proxy / application_1519235874088_0003 /
18/02/21 21:49:29信息mapreduce.Job:正在运行的作业:job_1519 235874088_0003
18/02/21 21:49:42信息mapreduce.Job:Job job_1519235874088_0003以超级模式运行:false
18/02/21 21:49:42信息mapreduce.Job:map 0%减少0%
18/02/21 21:49:52信息mapreduce.Job:任务ID:attempt_1519235874088_0003_m_000001_0,状态:FAILED
错误:java.lang.RuntimeException:配置对象时出错
在org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
在org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
在org.apache .hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
at org.apache.hadoop.mapred .MapTask.run(MapTask.java:342)
at org.apache.hadoop.mapred.YarnChild $ 2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method )
在javax.security.auth.Subject.doAs(Subject.java:422)
在org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
在org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
由java导致:java在sun.reflect.NativeMethodAccessorImpl.invoke .lang.reflect.InvocationTargetException $在sun.reflect.NativeMethodAccessorImpl.invoke0 b $ b(本机方法)
(NativeMethodAccessorImpl.java:62)
。在sun.reflect。 DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
处org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils java.lang.reflect.Method.invoke(Method.java:498)
。 java:106)
... 9 more
导致:java.lang.RuntimeException:在org.apache.hadoop.util.ReflectionUtils.setJobConf配置对象
时出错(ReflectionUtils.java :109)
在org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
在org.apache.hadoop.util.ReflectionUtils.newInstan ce(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more
引起:java.lang .reflect.InvocationTargetException $处sun.reflect.DelegatingMethodAccessorImpl sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.NativeMethodAccessorImpl.invoke0 b $ b(本机方法)
。 invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java: 106)
... 17 more
导致:java.lang.RuntimeException:配置异常
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:222)
at org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66)
... 22 more
导致:java.io.IOException:无法运行程序D: \tmp\hadoop-Mahsa \
m本地-dir\usercache\Mahsa\appcache\application_1519235874088_0003\container_1519235874088_0003_01_000003\.\wordcount-mapper.py:CreateProcess的错误= 193,%1不是有效的Win32应用
在java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:209)
... 23 more $ b $由于:java.io.IOException:CreateProcess错误= 193,%1不是有效的Win32应用程序$ b $在java.lang.ProcessImpl.create(本地方法)$ b $在java.lang.ProcessImpl。 < init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 24 more
18/02/21 21:49:52信息mapreduce.Job:任务ID:attempt_1519235874088_0003_m_000000_0,状态:FAILED
错误:java.lang.RuntimeException :在配置对象
时出错在org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
在org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
在org.apache .hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
at org.apache.hadoop.mapred .MapTask.run(MapTask.java:342)
at org.apache.hadoop.mapred.YarnChild $ 2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method )
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
引起:java.lang.reflect.InvocationTargetException $ b $ at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)$ b在sun.reflect.NativeMethodAccessorImp处为$ b l.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
在org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 9 more
引起:java.lang.RuntimeException:配置对象
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more
导致:java.lang.reflect.InvocationTargetException $ b $在sun.reflect.NativeMethodAccessorImpl.invoke0(本地方法)
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav a:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org .apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 17 more
导致:java.lang.RuntimeException:配置异常$ b $ org.apache。 hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:222)
at org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66)
... 22 more
产生java.io.IOException:由造成不能运行程序d:\tmp\hadoop-Mahsa\\\
m本地-dir\usercache\Mahsa\appcache\application_1519235874088_0003\container_1519235874088_0003_01_000002\.\ wordcount-mapper.py:CreateProcess错误= 193,%1不是有效的Win32应用程序
在java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
在org.apache.hadoop。 streaming.PipeMapRe d.configure(PipeMapRed.java:209)
... 23 more
导致:java.io.IOException:CreateProcess错误= 193,%1不是有效的Win32应用程序
at < init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:java.lang.ProcessImpl.java中的java.lang.ProcessImpl.create(Native方法)
。 137)
在java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 24 more
18/02/21 21:50:02信息mapreduce .JOB:任务标识:attempt_1519235874088_0003_m_000001_1,状态:失败
错误:了java.lang.RuntimeException:错误在org.apache.hadoop.util.ReflectionUtils.setJobConf配置对象
(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
在org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:342)
at org.apache.hadoop.mapred.YarnChild $ 2.run(YarnChild.java:168)
at java。 security.AccessController.doPrivileged(Native方法)
位于javax.security.auth.Subject.doAs(Subject.java:422)
位于org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java :1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
引起:java.lang.reflect.InvocationTargetException $ b $在sun.reflect.NativeMethodAccessorImpl .invoke0(本机方法)
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
是java .lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 9 more
由:java.lang.Runtim引起eException:在配置对象
时发生错误org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
在org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java: 75)
在org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
在org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more
导致:java.lang.reflect.InvocationTargetException $ b $在sun.reflect.NativeMethodAccessorImpl.invoke0(本地方法)
在sun.reflect.NativeMethodAccessorImpl.invoke( NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
在org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 17 more
引起:java.lang.RuntimeException:配置异常
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:222)
at org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66)
... 22 more
导致:java.io.IOException:无法运行程序D:\ tmp \hadoop-Mahsa\\\
m-local-dir\usercache\Mahsa\appcache\ application_1519235874088_0003\container_1519235874088_0003_01_000004\.\wordcount-mapper.py:CreateProcess的错误= 193,%1不是在java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)$ b有效的Win32应用
$ b at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:209)
... 23 more
导致:java.io.IOException:CreateProcess错误= 193,%1不是有效的Win32应用程序
在java.lang.ProcessImpl.create(本地方法)
在java.lang.ProcessImpl。< init>(ProcessImpl.java:386)
在java .lang.ProcessImpl.start(ProcessImpl.java:137)
在java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 24 more
18/02/21 21:50:03信息mapreduce.Job:任务标识:attempt_1519235874088_0003_m_000000_1,Status:FAILED
错误:java.lang.RuntimeException:在配置对象
时发生错误org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
在org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
在org.apache。 hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
位于org.apache.hadoop.mapred.MapTask.run(MapTask.java:342)
位于org.apache.hadoop.mapred。 YarnChild $ 2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupIn org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
导致:java.lang.reflect.InvocationTargetException
在sun。 reflect.NativeMethodAccessorImpl.invoke0(本机方法)
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
在java.lang.reflect.Method.invoke(Method.java:498)
在org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 9 more
导致:java.lang.RuntimeException:在配置对象
时出错org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
在org.apache.hadoop .util.ReflectionUtils.setConf(ReflectionUtils.java:75)
在org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
在org.apache.hadoop.mapred.MapR unner.configure(MapRunner.java:38)
... 14 more
导致:java.lang.reflect.InvocationTargetException $ b $在sun.reflect.NativeMethodAccessorImpl.invoke0(本地方法)
。在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
处的java.lang.reflect.Method sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
。 invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 17 more
导致:java.lang .RuntimeException:配置异常
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:222)
at org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66 )
... 22 more
导致:java.io.IOException:无法运行程序D:\tmp\hadoop -Mahsa\\\
m-local-dir\usercache\Mahsa \appcache\application_ 1519235874088_0003\container_1519235874088_0003_01_000005\.\wordcount-mapper.py:CreateProcess的错误= 193,%1不是在java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)$ B有效的Win32应用
$ b at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:209)
... 23 more
导致:java.io.IOException:CreateProcess错误= 193,%1不是有效的Win32应用程序
在java.lang.ProcessImpl.create(本地方法)
在java.lang.ProcessImpl。< init>(ProcessImpl.java:386)
在java .lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 24 more
18 / 02/21 21:50:13信息mapreduce.Job:任务ID:attempt_1519235874088_0003_m_000001_2,状态:FAILED
错误:java.lang.RuntimeException:在配置对象
时发生错误org.apache.hadoop.util .ReflectionUtils.setJobConf(ReflectionUtils .java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133 )
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:342)
在org.apache.hadoop.mapred.YarnChild $ 2.run(YarnChild.java:168)$ b $在java.security.AccessController.doPrivileged(本地方法)$ b $在javax.security.auth.Subject。 doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild。 Java的:在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java java.lang.reflect.InvocationTargetException
:163)
引起的:62)
at sun.reflect.Del egatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
处org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils java.lang.reflect.Method.invoke(Method.java:498)
。 java:106)
... 9 more
导致:java.lang.RuntimeException:在org.apache.hadoop.util.ReflectionUtils.setJobConf配置对象
时出错(ReflectionUtils.java :109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more
引起:java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(德勒gatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 17 more
导致:java.lang.RuntimeException:配置异常$ b $在org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:222)
在org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66)
... 22 more
导致:java.io.IOException:无法运行程序D:\ tmp\hadoop-Mahsa\\\
m本地-dir\usercache\Mahsa\appcache\application_1519235874088_0003\container_1519235874088_0003_01_000007\.\wordcount-mapper.py:CreateProcess的错误= 193,%1不是一个有效的Win32应用程序
在java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
在org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:209)
。 .. 23更多
导致: java.io.IOException:CreateProcess错误= 193,%1不是有效的Win32应用程序
在java.lang.ProcessImpl.create(本地方法)
在java.lang.ProcessImpl。< init> (ProcessImpl.java:386)
在java.lang.ProcessImpl.start(ProcessImpl.java:137)
在java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
。 .. 24 more
18/02/21 21:50:14信息mapreduce.Job:任务ID:attempt_1519235874088_0003_m_000000_2,状态:FAILED
错误:java.lang.RuntimeException:配置错误对象
在org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
在org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
在org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
at org。 apache.hadoop.mapred.MapTask.run(MapTask.java:342)
at org.apache.hadoop.mapred.YarnChild $ 2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62 java.lang.reflect.InvocationTargetException
:163)
引起的)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache。 hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 9 more
导致:java.lang.RuntimeException:在org.apache.hadoop中配置对象
时出错。 util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
位于org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
位于org.apache.hadoop.util.ReflectionUtils。 newInstance(ReflectionUtils.java:133)
在org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more
引起:java.lang .reflect.InvocationTargetException $处sun.reflect.DelegatingMethodAccessorImpl sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.NativeMethodAccessorImpl.invoke0 b $ b(本机方法)
。 invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java: 106)
... 17 more
导致:java.lang.RuntimeException:配置异常
在org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRe d.java:222)
在org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66)
... 22 more
引起:java.io.IOException :不能运行程序 d:\tmp\hadoop-Mahsa\\\
m本地-dir\usercache\Mahsa\appcache\application_1519235874088_0003\container_1519235874088_0003_01_000008\.\wordcount-mapper.py:CreateProcess的错误= 193,%1不是有效的Win32应用程序
在java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
在org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed。 java:209)
... 23 more
导致:java.io.IOException:CreateProcess错误= 193,%1不是有效的Win32应用程序
在java.lang.ProcessImpl。 < init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
在java.lang.ProcessImpl中创建(本地方法)
。在java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 24更多
18/02/21 21:50:24信息mapreduce.Job:地图100%减少100%
18/02/21 21:50:34信息mapreduce 。作业:Job job_1519235874088_0003由于以下原因而失败,状态为FAILED:任务失败task_1519235874088_0003_m_000001
由于任务失败,作业失败。 failedMaps:1 failedReduces:0
18/02/21 21:50:34信息mapreduce.Job:计数器:13
作业计数器
失败的地图任务= 7
已杀死的地图任务= 1
启动的地图任务= 8
其他本地地图任务= 6
数据本地地图任务= 2
占用插槽中所有地图花费的总时间( ms)= 66573
所有地图任务花费的总时间(ms)= 0
所有地图任务花费的总时间(ms)= 66573
所有地图花费的总时间秒任务= 66573
所有映射任务占用的兆字节秒数= 68170752
映射 - 减少框架
CPU使用时间(毫秒)= 0
物理内存(字节)快照= 0
虚拟内存(字节)快照= 0
18/02/21 21:50:34错误streaming.StreamJob:作业不成功!
流式命令失败!
我真的不知道它有什么问题,我的工具我的时间很多。
感谢您的高级帮助或任何想法?
解决方案:
我将命令改为:
D:\hadoop\bin\hadoop jar
D:\hadoop\share\ hadoop \tools\lib\hadoop-streaming-2.7.2.jar
-file /in/wordcount-mapper.py -mapperpython wordcount-mapper.py
-file / in /wordcount-reducer.py -reducerpython wordcount-reducer.py
--input /in/mahsa.txt --output / output
因此我可以得到结果。
hadoop fs -cat / output / part- 00000
I have a problem to execute mapreduce python files on Hadoop by using Hadoop streaming.jar.
I use: Windows 10 64bit Python 3.6 and my IDE is spyder 3.2.6, Hadoop 2.3.0 jdk1.8.0_161
I can get answer while my maperducec code is written on java language, but my problem is when I want to mingle python libraries such as tensorflow or other useful machine learning libs on my data.
Installing hadoop 2.3.0: 1. hadoop-env export JAVA_HOME=C:\Java\jdk1.8.0_161 2. I created data -> dfs in hadoop folder
System Varibales: Edit Path as:
D:\hadoop\bin
C:\java\jdk1.8.0_161\bin
C:\ProgramData\Anaconda3
My MapReduce Python code: D:\digit\wordcount-mapper.py
#!/usr/bin/python3
import sys
for line in sys.stdin:
line = line.strip() # remove leading and trailing whitespace
words = line.split() # split the line into words
for word in words:
print( '%s\t%s' % (word, 1))
D:\digit\wordcount-reducer.py
#!/usr/bin/python3
from operator import itemgetter
import sys
current_word = None
current_count = 0
word = None
for line in sys.stdin:
line = line.strip()
word, count = line.split('\t', 1)
try:
count = int(count)
except ValueError:
continue
if current_word == word:
current_count += count
else:
if current_word:
print( '%s\t%s' % (current_word, current_count))
current_count = count
current_word = word
if current_word == word:
print( '%s\t%s' % (current_word, current_count))
When I run my command prompt as administrator:
D:\hadoop\bin> hadoop namenode -format
D:\hadoop\sbin>start-dfs.cmd
D:\hadoop\sbin>start-yarn.cmd
I checked : localhost:8088/ and http://localhost:50070 all is ok.
Then when I enter:
D:\hadoop\sbin>hadoop fs -mkdir -p /input
D:\hadoop\sbin>hadoop fs -copyFromLocal D:\digit\mahsa.txt /input
D:\hadoop\sbin>D:\hadoop\bin\hadoop jar D:\hadoop\share\hadoop\tools\lib\hadoop-streaming-2.3.0.jar -file D:\digit\wordcount-mapper.py -mapper D:\digit\wordcount-mapper.py -file D:\digit\wordcount-reducer.py -reducer D:\digit\wordcount-reducer.py -input /input/mahsa.txt/ -output /output/
I have this error:
18/02/21 21:49:24 WARN streaming.StreamJob: -file option is deprecated, please use generic option -files instead.
packageJobJar: [D:\digit\wordcount-mapper.py, D:\digit\wordcount-reducer.py, /D:/tmp/hadoop-Mahsa/hadoop-unjar7054071292684552905/] [] C:\Users\Mahsa\AppData\Local\Temp\streamjob2327207111481875361.jar tmpDir=null
18/02/21 21:49:25 INFO client.RMProxy: Connecting to ResourceManager at /0.0.0.0:8032
18/02/21 21:49:25 INFO client.RMProxy: Connecting to ResourceManager at /0.0.0.0:8032
18/02/21 21:49:28 INFO mapred.FileInputFormat: Total input paths to process : 1
18/02/21 21:49:28 INFO mapreduce.JobSubmitter: number of splits:2
18/02/21 21:49:29 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1519235874088_0003
18/02/21 21:49:29 INFO impl.YarnClientImpl: Submitted application application_1519235874088_0003
18/02/21 21:49:29 INFO mapreduce.Job: The url to track the job: http://Mahsa:8088/proxy/application_1519235874088_0003/
18/02/21 21:49:29 INFO mapreduce.Job: Running job: job_1519235874088_0003
18/02/21 21:49:42 INFO mapreduce.Job: Job job_1519235874088_0003 running in uber mode : false
18/02/21 21:49:42 INFO mapreduce.Job: map 0% reduce 0%
18/02/21 21:49:52 INFO mapreduce.Job: Task Id : attempt_1519235874088_0003_m_000001_0, Status : FAILED
Error: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:342)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 9 more
Caused by: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 17 more
Caused by: java.lang.RuntimeException: configuration exception
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:222)
at org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66)
... 22 more
Caused by: java.io.IOException: Cannot run program "D:\tmp\hadoop-Mahsa\nm-local-dir\usercache\Mahsa\appcache\application_1519235874088_0003\container_1519235874088_0003_01_000003\.\wordcount-mapper.py": CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:209)
... 23 more
Caused by: java.io.IOException: CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 24 more
18/02/21 21:49:52 INFO mapreduce.Job: Task Id : attempt_1519235874088_0003_m_000000_0, Status : FAILED
Error: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:342)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 9 more
Caused by: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 17 more
Caused by: java.lang.RuntimeException: configuration exception
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:222)
at org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66)
... 22 more
Caused by: java.io.IOException: Cannot run program "D:\tmp\hadoop-Mahsa\nm-local-dir\usercache\Mahsa\appcache\application_1519235874088_0003\container_1519235874088_0003_01_000002\.\wordcount-mapper.py": CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:209)
... 23 more
Caused by: java.io.IOException: CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 24 more
18/02/21 21:50:02 INFO mapreduce.Job: Task Id : attempt_1519235874088_0003_m_000001_1, Status : FAILED
Error: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:342)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 9 more
Caused by: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 17 more
Caused by: java.lang.RuntimeException: configuration exception
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:222)
at org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66)
... 22 more
Caused by: java.io.IOException: Cannot run program "D:\tmp\hadoop-Mahsa\nm-local-dir\usercache\Mahsa\appcache\application_1519235874088_0003\container_1519235874088_0003_01_000004\.\wordcount-mapper.py": CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:209)
... 23 more
Caused by: java.io.IOException: CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 24 more
18/02/21 21:50:03 INFO mapreduce.Job: Task Id : attempt_1519235874088_0003_m_000000_1, Status : FAILED
Error: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:342)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 9 more
Caused by: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 17 more
Caused by: java.lang.RuntimeException: configuration exception
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:222)
at org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66)
... 22 more
Caused by: java.io.IOException: Cannot run program "D:\tmp\hadoop-Mahsa\nm-local-dir\usercache\Mahsa\appcache\application_1519235874088_0003\container_1519235874088_0003_01_000005\.\wordcount-mapper.py": CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:209)
... 23 more
Caused by: java.io.IOException: CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 24 more
18/02/21 21:50:13 INFO mapreduce.Job: Task Id : attempt_1519235874088_0003_m_000001_2, Status : FAILED
Error: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:342)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 9 more
Caused by: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 17 more
Caused by: java.lang.RuntimeException: configuration exception
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:222)
at org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66)
... 22 more
Caused by: java.io.IOException: Cannot run program "D:\tmp\hadoop-Mahsa\nm-local-dir\usercache\Mahsa\appcache\application_1519235874088_0003\container_1519235874088_0003_01_000007\.\wordcount-mapper.py": CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:209)
... 23 more
Caused by: java.io.IOException: CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 24 more
18/02/21 21:50:14 INFO mapreduce.Job: Task Id : attempt_1519235874088_0003_m_000000_2, Status : FAILED
Error: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:426)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:342)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 9 more
Caused by: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 17 more
Caused by: java.lang.RuntimeException: configuration exception
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:222)
at org.apache.hadoop.streaming.PipeMapper.configure(PipeMapper.java:66)
... 22 more
Caused by: java.io.IOException: Cannot run program "D:\tmp\hadoop-Mahsa\nm-local-dir\usercache\Mahsa\appcache\application_1519235874088_0003\container_1519235874088_0003_01_000008\.\wordcount-mapper.py": CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:209)
... 23 more
Caused by: java.io.IOException: CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 24 more
18/02/21 21:50:24 INFO mapreduce.Job: map 100% reduce 100%
18/02/21 21:50:34 INFO mapreduce.Job: Job job_1519235874088_0003 failed with state FAILED due to: Task failed task_1519235874088_0003_m_000001
Job failed as tasks failed. failedMaps:1 failedReduces:0
18/02/21 21:50:34 INFO mapreduce.Job: Counters: 13
Job Counters
Failed map tasks=7
Killed map tasks=1
Launched map tasks=8
Other local map tasks=6
Data-local map tasks=2
Total time spent by all maps in occupied slots (ms)=66573
Total time spent by all reduces in occupied slots (ms)=0
Total time spent by all map tasks (ms)=66573
Total vcore-seconds taken by all map tasks=66573
Total megabyte-seconds taken by all map tasks=68170752
Map-Reduce Framework
CPU time spent (ms)=0
Physical memory (bytes) snapshot=0
Virtual memory (bytes) snapshot=0
18/02/21 21:50:34 ERROR streaming.StreamJob: Job not Successful!
Streaming Command Failed!
I really donot know what is problem it tool my time a lot. Thank you in advanced for your help or any idea?
Solution:
I changed my command as:
D:\hadoop\bin\hadoop jar
D:\hadoop\share\hadoop\tools\lib\hadoop-streaming-2.7.2.jar
-file /in/wordcount-mapper.py -mapper "python wordcount-mapper.py"
-file /in/wordcount-reducer.py -reducer "python wordcount-reducer.py"
-input /in/mahsa.txt -output /output
Therefore I could get result.
hadoop fs -cat /output/part-00000
这篇关于在Windows上进行Python Hadoop流式处理,脚本不是有效的Win32应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!