python map reduce的方法是什么
发表于:2025-02-07 作者:千家信息网编辑
千家信息网最后更新 2025年02月07日,本篇内容主要讲解"python map reduce的方法是什么",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"python map reduce的方法是什
千家信息网最后更新 2025年02月07日python map reduce的方法是什么
本篇内容主要讲解"python map reduce的方法是什么",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"python map reduce的方法是什么"吧!
执行shell脚本run.sh
#! /bin/bashIN_DIR="/input/20140221"OUT_DIR="/output/20140221"HPHOME=$HADOOP_HOME/bin/JAR_PACKAGE=$HADOOP_HOME/contrib/streaming/hadoop-streaming-0.20.2-cdh4u0.jarMAP_FILE=$(pwd)/map.pyRED_FILE=$(pwd)/red.py${HPHOME}hadoop fs -rmr $OUT_DIR${HPHOME}hadoop jar $JAR_PACKAGE \ -numReduceTasks 1 \ -jobconf mapred.job.queue.name=platform \ -input $IN_DIR \ -output $OUT_DIR \ -file $MAP_FILE \ -file $RED_FILE \ -mapper $MAP_FILE \ -reducer $RED_FILE \ -inputformat SequenceFileAsTextInputFormatexit $?
map.py
#!/usr/bin/env pythonimport sysfor line in sys.stdin: line = line.strip() if line.find("str1")!=-1: item = line.split('\01') key = item[3] print '%s\t%s' % (key, 'str3') elif line.find("str2")!=-1: item = line.split('\01') key = item[2] value = item[5] print '%s\t%s\t%s' % (key, 'str3', value) else: pass
red.py
#!/usr/bin/env pythonfrom operator import itemgetterimport sysword2count = {}total_count = 0total_money = 0.0total_error = 0pre_pid = ''pre_money = 0.0is_pre_push = 0for line in sys.stdin: line = line.strip() if line.find('str3')!=-1: item = line.split('\t') total_money += float(item[2]) total_count += 1 else: passprint total_count, total_error, total_money ##最后才打印
仅作为参考
hadoop默认以'\t'分隔key和value,第一个字段为key
到reduce时,相同key的都在一起被同一个red.py处理,故可以连续读取相同key的每一行。(java中相同key的都以数组的形式放在一次reduce中了,而python却仍要读取多行,但相同key的都排在一起)
到此,相信大家对"python map reduce的方法是什么"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
方法
相同
内容
学习
实用
更深
一行
兴趣
字段
实用性
实际
形式
操作简单
数组
更多
朋友
网站
脚本
频道
多行
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库怎么查表内重复记录
简述网络安全的需求
计算机网络技术专业的爱好
方舟服务器管理怎么给等级
j计算机网络安全论文
网络安全是个什么行业
手机壳排版打印软件开发
基于国产操作系统上应用软件开发
华为哪个部门做5g基站软件开发
网络安全管理的含义
东莞商城软件开发定制
未来网络技术的变化
网站如何绑定数据库
oracle数据库表案例
网络安全问题与策略
清空数据库的程序员
大学网络安全宣传主题班会
企业服务器安全体系认证
什么数据库比较好写
在全省网络安全培训上的讲话
人机界面与网络技术
软件开发需求对接什么岗位
数据库服务器用什么处理器好
阜阳保险软件开发需要多少钱
对存储引擎的分布式KV数据库
北京靠谱的软件开发方案
清空数据库的程序员
荣耀备份恢复服务器异常
PIBRII翻译软件开发
备份数据库611