位置: 编程技术 - 正文

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

  • 北京增值税发票打印边距设置
  • 资源税的计税依据含增值税吗
  • 房地产企业税收优惠政策
  • 购买土地的契税怎么计算
  • 研发费用明细账
  • 工资用现金发放有风险吗?
  • 入资款印花税怎么计算
  • 抵扣认证的发票怎么查询
  • 所得税退税怎么办
  • 出口退税不退税则征税
  • 房地产形象海报
  • 工程款的税是怎么扣除的?
  • 购进的固定资产多少金额可以直接进去费用
  • 双倍余额递减法考虑净残值吗
  • 海关缴款书抵扣怎么做账
  • 应收账款转让的会计处理
  • 开专票需要哪些东西
  • 企业暂估收入申报,未开发票,几年以后要开票如何处理
  • 损益表现金流量表资产负债表
  • 固定资产报多好还是报少好
  • 家具厂打磨工工作图片
  • 票据权利消灭是啥意思
  • kindeditor vue
  • go进程管理
  • php nl2br
  • 固定资产报废后的处理程序
  • 在一个js文件中怎么写
  • 设置pin是什么意思
  • php做登录界面连接数据库
  • php获取当前页面
  • php的mysql_query
  • querywrapper多表联查
  • 申请减免费用的报告格式
  • html如何导入excel
  • 母公司与子公司交易属于关联交易吗
  • 公司开的餐费专票可以抵扣吗
  • 商业折扣的会计分录
  • 工业企业总产值怎么算
  • 个人所得税申报方式选哪个比较好
  • 公司零报税怎么操作流程
  • 帝国cms灵动标签调用外表
  • 增值税补充申报表不填可以吗
  • 非独立核算门市部销售自产应税消费品
  • 收到银行承兑汇票如何记账
  • 收回以前年度的应收账款较多能说明什么呢?
  • 归纳投入外币资产怎么写
  • 以土地使用权投资入股是否缴纳增值税
  • 非公司股东可以分红吗
  • 公司收入和开支比例
  • 银行退回服务费怎么写分录
  • 收取客户好处算违法吗
  • 商业承兑汇票怎么做账
  • 总公司调拨子公司怎么办
  • 年底本年利润如何处理
  • 多发了工资怎么做账务处理
  • 工业企业固定资产折旧年限
  • mysql的知识点
  • mysql增删改查面试题
  • 隔空传送怎样使用苹果
  • 电脑程序在运行桌面不显示的解决方法
  • win10通讯设置在哪
  • quickdcf.exe - quickdcf是什么进程 作用是什么
  • windows10已激活
  • 命令行查看硬盘序列号
  • win7共享打印机提示0x000709
  • js限制数组长度
  • js移动元素位置
  • js多选
  • 将一个目录复制到另一个目录下
  • 跟踪子弹
  • jquery日历插件代码
  • python利用range产生列表
  • 自制基质
  • 如何在电子税务局签订三方协议
  • 南京税务局几点下班
  • 北京市国家税务局发票查询平台
  • 在医院如何开报告单
  • 上海房产税税收
  • 困难减免土地使用税
  • 环保税申报操作手册
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设