1

我正在学习在 hadoop 集群上工作。我在 hadoop 流上工作了一段时间,我在 perl/python 中编写了 map-reduce 脚本并运行了这项工作。但是,对于运行 java map reduce 作业,我没有找到任何好的解释。例如:我有以下程序-

http://www.infosci.cornell.edu/hadoop/wordcount.html

有人可以告诉我如何实际编译该程序并运行该工作。

4

1 回答 1

6

创建一个目录来保存已编译的类:

mkdir WordCount_classes

编译你的类:

javac -classpath ${HADOOP_HOME}/hadoop-${HADOOP_VERSION}-core.jar -d WordCount_classes WordCount.java

从编译的类创建一个 jar 文件:

jar -cvf $HOME/code/hadoop/WordCount.jar -C WordCount_classes/ 。

为您的输入创建一个目录并将所有输入文件复制到其中,然后按如下方式运行您的作业:

bin/hadoop jar $HOME/code/WordCount.jar WordCount ${INPUTDIR} ${OUTPUTDIR}

作业的输出将放在 ${OUTPUTDIR} 目录中。此目录由 Hadoop 作业创建,因此在运行作业之前确保它不存在。

有关完整示例,请参见此处

于 2012-05-08T07:52:35.250 回答