位置: 编程技术 - 正文

让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灰度变换)

  • 公户网上转账怎么撤回
  • 车船税在备注栏怎么报表
  • 印刷宣传册是违法吗
  • 收到发票未付款怎么处理
  • 创立一个公司,公司的运营理念
  • 外贸委外加工企业成本怎么核算
  • 私营独资企业可以变更法人吗
  • 违反账簿、凭证管理要承担什么法律责任
  • 救灾捐赠会计分录
  • 包装物押金会计分录怎么做
  • 员工集体旅游费会计分录
  • 管理费用已付款未收到发票
  • 公司发的奖金可以直接公司账户转账给员工吗?
  • 公司使用个人车辆费用是多少
  • 在建工程转固定资产当月提折旧吗?
  • 证券投资基金管理人的职权
  • 转出多交增值税会计科目
  • 出售股票公允价值变动损益
  • 货物入库会计分录怎么做
  • 用苹果macbook pro怎样
  • 如何开启系统设置
  • linux mint 20.1安装
  • 一次性所得个人所得税缴纳标准
  • 第三方检测公司有前途吗
  • 房地产企业所得税预提成本10%
  • 关联方核对
  • php文件上传后只显示了路径怎么办啊
  • 音频的时域波形
  • uniapp零基础小白到项目实战
  • deepsort 跟踪
  • chatGPT身份指令
  • php sleep函数
  • sensor tester
  • iotop命令 监视磁盘I/O状态
  • 免费下载含羞草视频影视站苹果CMSv10高级主题模版破解无授权-OK源码破解
  • 债券溢折价摊销
  • 招待费进项转出填表二哪里
  • php static function
  • dedecms怎么改图片
  • 应退或应补税额是负数
  • access数据库不能存放什么数据
  • 无法在common files上设置新的所有者
  • 工会经费余额在借方还是贷方
  • 当月开票可以当月勾选吗
  • 公司如何交五险一金
  • 汇算清缴要求
  • 美容院收入怎么做会计分录
  • ce认证所需的模块有哪些
  • 进项税额转出的所有会计分录
  • 长期股权投资被投资方实现净利润
  • 公司租赁的车辆发生的费用都可以报销吗?
  • 社保阶段性减免范围
  • 研发费用如何做账
  • 简易计税项目的进项税能抵一般项目的销项税额吗?
  • 装修费用摊销计入什么科目
  • 员工办理健康证介绍信模板
  • 新基建政策文件
  • windows2008关闭ie增强
  • 哪个是win8.1更新win10的补丁
  • ubuntu的安装包
  • freebsd操作命令
  • ac1st19.dll
  • win7系统玩游戏
  • Windows XP中网桥设置方法
  • Win10 Mobile首个RS2预览版14905快速版今日开始推送
  • 苹果mac系统怎么安装pip工具
  • 不格式化更改盘符
  • linux安装有哪几种方式
  • 分形图形学
  • Unity3D游戏开发标准教程
  • jQuery javascript获得网页的高度与宽度的实现代码
  • 安卓 图形api
  • css实战案例
  • android检测网络差
  • threejs 源码
  • unity ugu
  • webview清除数据
  • unity怎么删除导入的包
  • 哈尔滨国税局待遇怎么样
  • 党员e先锋中的支部云课堂在哪
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设