Python运行MapReducer程序时所遇异常
landen@Master:~/UntarFile/hadoop-1.0.4$ bin/hadoop jar contrib/streaming/hadoop-streaming-1.0.4.jar -mapper home/landen/UntarFile/hadoop-1.0.4/PythonMR/wordMapper.py -reducer /home/landen/UntarFile/hadoop-1.0.4/PythonMR/wordReducer.py -input /input/* -output wordCountOutput
Warning: $HADOOP_HOME is deprecated.
packageJobJar: [/home/landen/UntarFile/hadoop-1.0.4/datas/tmp/hadoop-unjar2023262079914179173/] [] /tmp/streamjob1615815049526219730.jar tmpDir=null
14/03/19 11:22:49 INFO util.NativeCodeLoader: Loaded the native-hadoop library
14/03/19 11:22:49 WARN snappy.LoadSnappy: Snappy native library not loaded
14/03/19 11:22:49 INFO mapred.FileInputFormat: Total input paths to process : 1
14/03/19 11:22:50 INFO streaming.StreamJob: getLocalDirs(): [/home/landen/UntarFile/hadoop-1.0.4/datas/tmp/mapred/local]
14/03/19 11:22:50 INFO streaming.StreamJob: Running job: job_201403182127_0006
14/03/19 11:22:50 INFO streaming.StreamJob: To kill this job, run:
14/03/19 11:22:50 INFO streaming.StreamJob: /home/landen/UntarFile/hadoop-1.0.4/libexec/../bin/hadoop job -Dmapred.job.tracker=Master:9001 -kill job_201403182127_0006
14/03/19 11:22:50 INFO streaming.StreamJob: Tracking URL: http://Master:50030/jobdetails.jsp?jobid=job_201403182127_0006
14/03/19 11:22:51 INFO streaming.StreamJob: map 0% reduce 0%
14/03/19 11:23:27 INFO streaming.StreamJob: map 100% reduce 100%
14/03/19 11:23:27 INFO streaming.StreamJob: To kill this job, run:
14/03/19 11:23:27 INFO streaming.StreamJob: /home/landen/UntarFile/hadoop-1.0.4/libexec/../bin/hadoop job -Dmapred.job.tracker=Master:9001 -kill job_201403182127_0006
14/03/19 11:23:27 INFO streaming.StreamJob: Tracking URL: http://Master:50030/jobdetails.jsp?jobid=job_201403182127_0006
bug出现:
14/03/19 11:23:27 ERROR streaming.StreamJob: Job not successful. Error: # of failed Map Tasks exceeded allowed limit. FailedCount: 1. LastFailedTask: task_201403182127_0006_m_000000
14/03/19 11:23:27 INFO streaming.StreamJob: killJob...
Streaming Command Failed!
查看hadoop logs文件发现:
Caused by: java.io.IOException: Cannot run program "./PythonMR/wordMapper.py": error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
at org.apache.hadoop.streaming.PipeMapRed.configure(PipeMapRed.java:214)
... 23 more
Reason 1:执行py文件时开头没指定相关的python执行文件地址路径和编码
#!/usr/bin/python
# coding=utf-8
Reason 2:未给python文件相关执行权限
chmod a+x *.py
Reason 3:在提交作业时,采用-file选项指定这些文件, 比如上面例子中,可以使用“-file Mapper -file Reducer” 或者 “-file Mapper.py -file Reducer.py”, 这样,Hadoop会将这两个文件自动分发到各个节点上(Distributed Cache).
landen@Master:~/UntarFile/hadoop-1.0.4$ bin/hadoop jar contrib/streaming/hadoop-streaming-1.0.4.jar -mapper ./PythonMR/wordMapper.py -reducer ./PythonMR/wordReducer.py -input /input/* -output wordCountOutput -file ./PythonMR/wordMapper.py -file ./PythonMR/wordReducer.py
Warning: $HADOOP_HOME is deprecated.
packageJobJar: [./PythonMR/wordMapper.py, ./PythonMR/wordReducer.py, /home/landen/UntarFile/hadoop-1.0.4/datas/tmp/hadoop-unjar3733581910057274756/] [] /tmp/streamjob8413860595071502704.jar tmpDir=null
14/03/19 11:33:51 INFO util.NativeCodeLoader: Loaded the native-hadoop library
14/03/19 11:33:51 WARN snappy.LoadSnappy: Snappy native library not loaded
14/03/19 11:33:51 INFO mapred.FileInputFormat: Total input paths to process : 1
14/03/19 11:33:51 INFO streaming.StreamJob: getLocalDirs(): [/home/landen/UntarFile/hadoop-1.0.4/datas/tmp/mapred/local]
14/03/19 11:33:51 INFO streaming.StreamJob: Running job: job_201403182127_0007
14/03/19 11:33:51 INFO streaming.StreamJob: To kill this job, run:
14/03/19 11:33:51 INFO streaming.StreamJob: /home/landen/UntarFile/hadoop-1.0.4/libexec/../bin/hadoop job -Dmapred.job.tracker=Master:9001 -kill job_201403182127_0007
14/03/19 11:33:51 INFO streaming.StreamJob: Tracking URL: http://Master:50030/jobdetails.jsp?jobid=job_201403182127_0007
14/03/19 11:33:52 INFO streaming.StreamJob: map 0% reduce 0%
14/03/19 11:34:06 INFO streaming.StreamJob: map 50% reduce 0%
14/03/19 11:34:07 INFO streaming.StreamJob: map 100% reduce 0%
14/03/19 11:34:18 INFO streaming.StreamJob: map 100% reduce 100%
14/03/19 11:34:24 INFO streaming.StreamJob: Job complete: job_201403182127_0007
14/03/19 11:34:24 INFO streaming.StreamJob: Output: wordCountOutput
Python运行MapReducer程序时所遇异常的更多相关文章
- 在集群上运行caffe程序时如何避免Out of Memory
不少同学抱怨,在集群的GPU节点上运行caffe程序时,经常出现"Out of Memory"的情况.实际上,如果我们在提交caffe程序到某个GPU节点的同时,指定该节点某个比较 ...
- vs2010运行C程序时,运行结果窗口一闪而过
摘要:vs2010运行C程序时,运行结果窗口一闪而过; ------------------------------------------------------------ Ctrl F5测试运行 ...
- eclipse运行spark程序时日志颜色为黑色的解决办法
自从开始学习spark计算框架以来,我们老师教的是local模式下用eclipse运行spark程序,然后我在运行spark程序时,发现控制台的日志颜色总是显示为黑色,哇,作为程序猿总有一种强迫症,发 ...
- 命令行运行Java程序时出现错误
在命令行运行Java程序时出现下面错误 Error: Could not create the Java Virtual Machine. Error: A fatal exception has o ...
- 在命令提示符下,运行Java程序时,提示"找不到或无法加载主类"
小白:在命令提示符下,运行Java程序时,提示"找不到或无法加载主类". 大神:运行Java程序的作用是让Java解释器装载,检验并运行字节码文件(.class).因此,在运行Ja ...
- 多个线程运行MR程序时hadoop出现的问题
夜间多个任务同时并行,总有几个随机性有任务失败,查看日志: cat -n ads_channel.log |grep "Caused by" Caused by: java.uti ...
- 如何在本地使用scala或python运行Spark程序
如何在本地使用scala或python运行Spark程序 包含两个部分: 本地scala语言编写程序,并编译打包成jar,在本地运行. 本地使用python语言编写程序,直接调用spark的接口, ...
- Python 运行其他程序
10.4 运行其他程序 在Python中可以方便地使用os模块运行其他的脚本或者程序,这样就可以在脚本中直接使用其他脚本,或者程序提供的功能,而不必再次编写实现该功能的代码.为了更好地控制运行的进程, ...
- 在cmd窗口下运行Java程序时无法找到主类的解决办法
我是Java的初学者,昨天在cmd窗口下运行一段Java程序时总是有问题,可以编译但无法执行. 也就是javac时正确,一旦java时就不对了,提示找不到或无法加载主类,经百度谷歌再加上自己的摸索终于 ...
随机推荐
- 2018.09.09 poj2949Word Rings(01分数规划+spfa判环)
传送门 这题要先巧妙的转化一下. 对于每个字符串,我们把头尾的两个小字符串对应的点连边,边权是这个字符串的长度. 这样最多会出现26*26个点. 这个时候就只用求出边权和跟边数的最大比值了. 这个显然 ...
- python 修改文件编码方式
import chardet import os def strJudgeCode(str): return chardet.detect(str) def readFile(path): try: ...
- MemCache 安全使用原则(自己整理,仅供参考)
// 触发器:作用是检查缓存时否可用(不用add做触发器),避免缓存不可用时add返回false按非首次登陆处理,导致不能增加成长值. memCachedClient.get(memCacheKey) ...
- Codeforces777A Shell Game 2017-05-04 17:11 59人阅读 评论(0) 收藏
A. Shell Game time limit per test 0.5 seconds memory limit per test 256 megabytes input standard inp ...
- [Java]ArrayList集合的contains方法
用到集合ArrayList时经常会用到里面自带的方法boolean contains(Object o);此方法用于判断集合里面是否包含元素o,现在讨论下在Object类型为类类型的时候的情况: cl ...
- Citrus Engine简单Demo
Citrus Engine是一个的开源flash平台(platform,也可以说是卷轴类)游戏引擎,它基于Starling Framework添加了各种物理引擎,3D引擎,动画引擎. Citrus实现 ...
- 教程-Delphi调用百度地图API(XE8+WIN7)
unit U_map; interface //---------------------------------------------------// //----------COPY BY 无言 ...
- 用C#开发的双色球走势图(原创)值得园友拥有
首先声明,个人纯粹无聊之作,不作商业用途. 我相信每个人都拥有一个梦想那就是有朝一日能中500W,这个也一直是我的梦想,并默默每一期双色球或多或少要贡献自己一点点力量,本人并不属于那种铁杆的彩票迷,每 ...
- 排序算法之堆排序(Heapsort)解析
一.堆排序的优缺点(pros and cons) (还是简单的说说这个,毕竟没有必要浪费时间去理解一个糟糕的的算法) 优点: 堆排序的效率与快排.归并相同,都达到了基于比较的排序算法效率的峰值(时间复 ...
- 关于微信小程序登录,后端如何生成3rd_session?(后端为c#)
各位大神,请教一个问题,现在是小程序端调用wx.login后,将code传入后端接口,后端发起微信服务器request获取openid和session_key,后端再自定义生成一个登录状态:3rd_s ...