Python 中怎么使用Hadoop实现统计功能
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,Python 中怎么使用Hadoop实现统计功能,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Python map/reduce编写
千家信息网最后更新 2026年11月02日Python 中怎么使用Hadoop实现统计功能
Python 中怎么使用Hadoop实现统计功能,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
Python map/reduce
编写 map.py
#!/usr/bin/env pythonimport sysdef read_inputs(file): for line in file: line = line.strip() yield line.split()def main(): file = sys.stdin lines = read_inputs(file) for words in lines: for word in words: print("{}\t{}".format(word, 1))if __name__ == "__main__": main()测试
echo "Hello world Bye world" | ./map.py Hello 1world 1Bye 1world 1
编写 reduce.py
#!/usr/bin/env pythonimport sysdef read_map_outputs(file): for line in file: yield line.strip().split("\t", 1)def main(): current_word = None word_count = 0 lines = read_map_outputs(sys.stdin) for word, count in lines: try: count = int(count) except ValueError: continue if current_word == word: word_count += count else: if current_word: print("{}\t{}".format(current_word, word_count)) current_word = word word_count = count if current_word: print("{}\t{}".format(current_word, word_count))if __name__ == "__main__": main()测试
echo "Hello World Bye World Hello" | ./map.py | sort | ./reduce.pyBye 1Hello 2World 2
上面都是使用 Python 自己的特性去进行统计,下面展示使用 Hadoop 的流程来执行
使用 MapReduce 执行 Python 脚本
查找 hadoop-stream 库的位置
find ./ -name "hadoop-streaming*.jar" ./local/hadoop/share/hadoop/tools/sources/hadoop-streaming-2.7.3-test-sources.jar./local/hadoop/share/hadoop/tools/sources/hadoop-streaming-2.7.3-sources.jar./local/hadoop/share/hadoop/tools/lib/hadoop-streaming-2.7.3.jar
在 HDFS 上建立读入文件夹 input
hadoop -fs mkdir input
将待处理文件放入 HDFS
hadoop -fs put allfiles input
运行命令处理
hadoop jar ~/local/hadoop/share/hadoop/tools/lib/hadoop-streaming-2.7.3.jar -input input -output output -mapper ./map.py -reducer ./reduce.py
处理后的文件
Bye 1Goodbye 1Hadoop 2Hello 2World 2
关于Python 中怎么使用Hadoop实现统计功能问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
统计
文件
问题
处理
功能
更多
帮助
测试
解答
易行
简单易行
位置
内容
命令
小伙
小伙伴
文件夹
方法
流程
特性
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
广州万易互联网科技有限公司
科技创新与互联网经济
互联网科技开发公司
智网互联网科技
以房互联网科技
卓越科技(互联网 )
深圳互联网科技怎么样
老年人脱离互联网科技的作文
中国互联网有什么科技含量
互联网经济与金融科技
互联网金融中的现代科技
世界互联网科技公司市值排名
成都互联网科技公司工作好不好
互联网科技的全部知识
工业互联网等科技实现智能化赋能
伍佰万互联网科技怎么赚钱
互联网科技手机排行榜
保山互联网科技靠谱吗
东风日产互联网科技公司叫什么
科技发展第三阶段互联网时代
互联网加科技
广东万易互联网科技有限公司惠州分公司
互联网和科技技术
互联网科技公司的优势
深圳互联网络科技有限公司
无锡溥仪互联网科技有限公司
互联网校园科技培训
上海宁丞科技互联网
中国互联网十大科技股排名
东莞新华互联网科技学校