位置: 编程技术 - 正文

让python在hadoop上跑起来(hadoop运行python程序)

编辑:rootadmin

推荐整理分享让python在hadoop上跑起来(hadoop运行python程序),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:hadoop with python,python hadoop mapreduce,hadoop运行python程序,hadoop运行python程序,hadoop运行python程序,hadoop pytorch,hadoop pytorch,hadoop运行python程序,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例讲解的是一般的hadoop入门程序“WordCount”,就是首先写一个map程序用来将输入的字符串分割成单个的单词,然后reduce这些单个的单词,相同的单词就对其进行计数,不同的单词分别输出,结果输出每一个单词出现的频数。

  注意:关于数据的输入输出是通过sys.stdin(系统标准输入)和sys.stdout(系统标准输出)来控制数据的读入与输出。所有的脚本执行之前都需要修改权限,否则没有执行权限,例如下面的脚本创建之前使用“chmod +x mapper.py”

1.mapper.py

2.reducer.py

在shell中运行以下脚本,查看输出结果:

其实,我觉得后面这个reducer.py处理单词频数有点麻烦,将单词存储在字典里面,单词作为‘key',每一个单词出现的频数作为'value',进而进行频数统计感觉会更加高效一点。因此,改进脚本如下:

mapper_1.py

但是,貌似写着写着用了两个循环,反而效率低了。关键是不太明白这里的current_word和current_count的作用,如果从字面上老看是当前存在的单词,那么怎么和遍历读取的word和count相区别?

下面看一些脚本的输出结果:

我们可以看到,上面同样的输入数据,同样的shell换了不同的reducer,结果后者并没有对数据进行排序,实在是费解~

让python在hadoop上跑起来(hadoop运行python程序)

让Python代码在hadoop上跑起来!

一、准备输入数据

接下来,先下载三本书:

然后把这三本书上传到hdfs文件系统上:

寻找你的streaming的jar文件存放地址,注意2.6的版本放到share目录下了,可以进入hadoop安装目录寻找该文件:

然后就会找到我们的share文件夹中的hadoop-straming*.jar文件:

寻找速度可能有点慢,因此你最好是根据自己的版本号到对应的目录下去寻找这个streaming文件,由于这个文件的路径比较长,因此我们可以将它写入到环境变量:

由于通过streaming接口运行的脚本太长了,因此直接建立一个shell名称为run.sh来运行:

然后"source run.sh"来执行mapreduce。结果就响当当的出来啦。这里特别要提醒一下:

1、一定要把本地的输入文件转移到hdfs系统上面,否则无法识别你的input内容;

2、一定要有权限,一定要在你的hdfs系统下面建立你的个人文件夹否则就会被denied,是的,就是这两个错误搞得我在服务器上面痛不欲生,四处问人的感觉真心不如自己清醒对待来的好;

3、如果你是第一次在服务器上面玩hadoop,建议在这之前请在自己的虚拟机或者linux系统上面配置好伪分布式然后入门hadoop来的比较不那么头疼,之前我并不知道我在服务器上面运维没有给我运行的权限,后来在自己的虚拟机里面运行一下example实例以及wordcount才找到自己的错误。

好啦,然后不出意外,就会complete啦,你就可以通过如下方式查看计数结果:

标签: hadoop运行python程序

本文链接地址:https://www.jiuchutong.com/biancheng/381318.html 转载请保留说明!

上一篇:CentOS安装pillow报错的解决方法(centos 安装pip3)

下一篇:Python图像灰度变换及图像数组操作(python灰度变换)

  • 金税盘年费能全额抵扣吗
  • 预提所得税的计税基础
  • 递延所得税资产和负债怎么理解
  • 法人买社保不领钱可以吗
  • 企业纳税过程
  • 工程类工资表为哪些内容
  • 物业公司外包保安死亡
  • 聘用退休员工
  • 税费的计提和缴纳
  • 非现金资产债务怎么算
  • 小微企业所得税优惠政策最新2022
  • 住房公积金比例一般是多少
  • 股权资本成本包括什么
  • 收到发票付款是抹了零头怎么做账
  • 继续教育专项附加扣除可以扣几年
  • 劳务费做账是否需要发票
  • 贴息是谁支付
  • 扶持资金属于政府补助吗
  • 受托加工物资如何做账
  • 销售额增加10%什么概念
  • 企业固定资产出租取得的收入属于
  • 税务会计学知识点
  • 税控盘抵税可以跨年吗
  • 金税盘减免税款贷方余额
  • etc充值发票可以抵扣税吗
  • 电子发票作废怎么做
  • 党员经费的使用范围
  • 如何做会计分录
  • 物业公司收取水电周转金后果
  • php数组函数题目
  • 电子税务局变更办税人员怎么操作
  • 华为鸿蒙os升级机型曝光
  • 鸿蒙系统进入工程菜单
  • PHP:pg_field_table()的用法_PostgreSQL函数
  • 若依框架讲解
  • uniapp单选功能
  • 未确认融资收益怎么理解
  • 工业企业成本核算流程
  • 上市公司转让股票所得要交个税吗?
  • 长期股权投资实现净利润计入什么科目
  • 前端布局flex
  • 前端使用vue的好处
  • 增值税普通发票需要交税吗
  • 承兑汇票贴现会计分录怎么做
  • 锅炉维修项目
  • 上季度的发票开出去了可以作废吗
  • mongo删除数据库命令
  • 其他收益在报表列示的项目是
  • 汇算清缴的费用标准 中汇
  • 油卡预付卡发票能入费用吗怎么入账
  • 技术人员工资计入生产成本吗
  • 劳务外经证预缴税款
  • 管理费用抵扣企业所得税的比例
  • 合作研究开发项目的合同
  • 资产减值损失的原因
  • 微信转账截图可以作为会计凭证吗
  • 递延收入怎么做账
  • 执行企业会计准则的非上市企业
  • 公司抽奖的成本怎么算
  • 企业成本结转分录
  • 利得与损失的四种类型
  • 残保金什么时候截止
  • 生产成本如何设置明细账
  • vmware虚拟机怎么改用户名
  • auepuc.exe是什么软件
  • windows7中ie浏览器怎么打开
  • 苹果知识大全
  • gcuservice.exe
  • qq空间好友评论别人看不到
  • linux deploy 无root
  • 使用iso镜像文件
  • ubuntu安装指南
  • 安卓闹钟软件下载
  • 解决Extjs 4 Panel作为Window组件的子组件时出现双重边框问题
  • js实现表格动态合并单元格
  • python批量删除行
  • 湖南社保卡怎么网上缴费
  • 投资联营的房产税纳税人是谁
  • 国地税发展历程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设