接下来记录一下如何使用hadoop-streaming运行一个简单的mapreduce
hadoop-streaming
hadoop-streaming和spark-streaming不是一个意思
简单的说hadooop-streaming是一个框架,可以让任何语言编写的mr程序都能在hadoop上运行,只需要遵循标准输入stdin输出stdout即可。
因此我们可以用python写一个mr过程来体验一下
先写一个map.py
import sys
for line in sys.stdin:
ss = line.strip().split(' ')
for word in ss:
print('\t'.join([word.strip(),"1"]))
随便写一个测试文件 word.txt
张三 李四
黄二 小牛
张三 小牛
李四 黄一
然后使用以下命令,体会一下map过程
cat word.txt | python map.py
输出
张三 1
李四 1
黄二 1
小牛 1
张三 1