流程:
1.获取配置信息,获取job对象实例
2.指定本程序jar包所在位置
3.关联mapperreduce
4.指定mapper输出数据kv类型
5.指定最终输出数据kv类型
6.指定job的输入原始文件所在目录
7.指定job的输出结果所在目录
8.🆗
使用hadoop streaming运行Python MapReduce程序
Hadoop Streaming是Hadoop提供的一种编程工具,允许用户用任何可执行程序和脚本作为mapper和reducer来完成Map/Reduce任务,这意味着你如果只是hadoop的一个轻度使用者,你完全可以用Hadoop Streaming+Python/Ruby/Go 等任何你熟悉的语言来完成你的大数据探索需求,又不需要写上很多代码。
1.hadoop streaming的工作方式
hadoop streaming的工作方式如下图(在这里我们只谈跟hadoop streaming相关的部分,至于MapReduce的细节不予赘述)。与标准的MapReduce(以下简称MR)一样的是整个MR过程依然由 mapper、[combiner]、reducer组成(其中combiner为可选加入)。用户像使用java一样去用其他语言 编写MR,只不过Mapper/Reducer的输入和输出并不是和java API打交道,而是通过该语言下的标准输入输出函数来进行。我在图中尤其标注了绿色的框框,是你应该关注并自己编写的mapper和reducer的位置。