用Python编写MapReduce的WordCount实例程序

该博客介绍了如何在已配置好的Hadoop环境中,利用Python编写MapReduce程序的WordCount实例。通过Hadoop Streaming,使用Python的sys.stdin和sys.stdout进行数据交互。博主提供了map过程的Python代码wc_map.py,并建议在运行MapReduce任务前,先单独测试mapper和reducer脚本,以确保其正确性。最后,讲解了如何上传文件到HDFS并提交MapReduce Job进行测试。
摘要由CSDN通过智能技术生成

条件,假设hadoop环境和python环境已经安装好,且hadoop已正常启动

Hadoop Streaming提供了编写MapReduce程序的map和reduce的一种方式,Map 和 Reduce间传递数据通过STDIN (标准输入)和STDOUT (标准输出)来实现的。我们仅仅使用Python的sys.stdin来输入数据,使用sys.stdout输出数据.下面介绍如何用Python编写一个WordCount实例程序。

map过程的python源文件wc_map.py:

#!/usr/bin/env python

import sys

for line in sys.stdin:
    line = line.strip()
    words = line.split()
    for word in words:
        print '%s %d' % (word,1)
reduce过程的python源文件wc_red.py:

#!/usr/bin/env python

import sys

wdict = {}
for line in sys.stdin:
   
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值