【发布时间】:2015-05-04 06:48:52
【问题描述】:
我想在 ec2 上运行 mapreduce 作业。
我有一个 mapper.py reducer.py 和 helper.py 以及一个包。
基本上,我的 mapper.py 将调用 helper.py 并且 helper.py 将从包中的模块导入(这是一堆 python 文件)。
当我运行 hadoop 作业时我的命令应该如何?
我应该使用-file,还是-cache?我都试过了,但它们都不起作用。
这是我正在使用的输入:
hadoop jar /usr/lib/hadoop-0.20/contrib/streaming/hadoop-streaming-0.20.2-cdh3u5.jar -D mapred.map.tasks=2 -D mapred.reduce.tasks=2 -file /root/mapper.py -mapper /root/mapper.py -reducer org.apache.hadoop.mapred.lib.IdentityReducer -input /user/root/Data/data -output /user/root/Data/out -file /root/helper.py
【问题讨论】:
-
AFAIK,stackoverflow 不是 EC2 的官方支持资源。你试过他们官方的support channels或forums吗?
-
是的,没有相关信息
-
我确信亚马逊会花钱请人回答你的问题,你在他们的支持论坛上问过吗?试试before asking here。
-
你能发布你正在使用的确切命令以及错误消息吗?
-
hadoop jar /usr/lib/hadoop-0.20/contrib/streaming/hadoop-streaming-0.20.2-cdh3u5.jar -D mapred.map.tasks=2 -D mapred.reduce.tasks=2 -file /root/mapper.py -mapper /root/mapper.py -reducer org.apache.hadoop.mapred.lib.IdentityReducer -input /user/root/Data/data -output /user/root/Data/out -file /root/helper.py
标签: python hadoop amazon-web-services mapreduce hadoop-streaming