3.4.2 Hadoop流的命令

Hadoop流提供自己的流命令选项及一个通用的命令选项,用于设置Hadoop流任务。首先介绍一下流命令。

1.Hadoop流命令选项

Hadoop流命令具体内容如表3-1所示。

3.4.2 Hadoop流的命令 - 图1

表3-1所示的Hadoop流命令中,必选的4个很好理解,分别用于指定输入/输出文件的位置及Map/Reduce函数。在其他的可选命令中,这里我们只解释常用的几个。

-file

-file指令用于将文件加入到Hadoop的Job中。上面的例子中,cat和wc都是Linux系统中的命令,而在Hadoop流的使用中,往往需要使用自己写的文件(作为Map函数或Reduce函数)。一般而言,这些文件是Hadoop集群中的机器上没有的,这时就需要使用Hadoop流中的-file命令将这个可执行文件加入到Hadoop的Job中。

-combiner

这个命令用来加入combiner程序。

-inputformat和-outputformat

这两个命令用来设置输入输出文件的处理方法,这两个命令后面的参数必须是Java类。

2.Hadoop流通用的命令选项

Hadoop流的通用命令用来配置Hadoop流的Job。需要注意的是,如果使用这部分配置,就必须将其置于流命令配置之前,否则命令会失败。这里简要列出命令列表(如表3-2所示),供大家参考。

3.4.2 Hadoop流的命令 - 图2