为了账号安全,请及时绑定邮箱和手机立即绑定

老师能帮忙看下这个是怎么回事吗,谢谢

http://img1.sycdn.imooc.com//5dea61f30001afef10510741.jpghttp://img1.sycdn.imooc.com//5dea621f0001217409860750.jpg

sudo /opt/hadoop/hadoop-2.10.0/bin/hadoop jar /opt/hadoop/hadoop-2.10.0/share/hadoop/tools/lib/hadoop-streaming-2.10.0.jar  -files "hdfs_map.py,hdfs_reduce.py" -input /input/student.txt -output /tmp/wordcounttest -mapper "/root/anaconda3/bin/python hdfs_map.py" -reducer "/root/anaconda3/bin/python hdfs_reduce.py"sudo /opt/hadoop/hadoop-2.10.0/bin/hadoop jar /opt/hadoop/hadoop-2.10.0/share/hadoop/tools/lib/hadoop-streaming-2.10.0.jar  -files "hdfs_map.py,hdfs_reduce.py" -input /input/student.txt -output /tmp/wordcounttest -mapper "/root/anaconda3/bin/python hdfs_map.py" -reducer "/root/anaconda3/bin/python hdfs_reduce.py"


#!/opt/anaconda3/bin/python
#-*- coding:utf-8 -*-
import sys
def read_input(file):
for line in file:
yield line.split()
def main():
data=read_input(sys.stdin)
for words in data:
for word in words:
print("%s%s%d" % (word,'\t',1))
if __name__=='__main__':
main()


#!/opt/anaconda3/bin/python
# -*- coding:utf-8 -*-
import sys 
from operatorimportitemgetter
from itertoolsimport groupby
def read_mapper_output(file,separator='\t'):
for line in file:
yieldline.rstrip().split(separator,1)
def main():
data=read_mapper_output(sys.stdin)
for current_word,group in groupby(data,itemgetter(0)):
total_count=sum(int(count) for current_word,count in group)
print("%s%s%d"%(current_word,'\t',total_count))
if __name__=='__main__':
main()


正在回答

1 回答

你这不是一下执行了重复的命令吗  而且错误详情已经提示你了  -files不支持    支持-file

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

老师能帮忙看下这个是怎么回事吗,谢谢

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信