mrjob 可以让用 python 2.5+ 来编写 mapreduce 作业,并在多个不同平台上运行,你可以:
使用纯 python 编写多步的 mapreduce 作业
在本机上进行测试
在 hadoop 集群上运行
使用 amazon elastic mapreduce (emr) 在云上运行
pip 的安装方法非常简单,无需配置,直接运行:pip install mrjob
代码实例:
from mrjob.job import mrjob
class mrwordcounter(mrjob):
def mapper(self, key, line):
for word in line.split():
yield word, 1
def reducer(self, word, occurrences):
yield word, sum(occurrences)
if __name__ == ‘__main__’:
mrwordcounter.run()