Hadoop:编译并执行MapReduce程序
Hadoop
2019-06-08
642
0
本以Hadoop – The Definitive Guide,4th Edition 中第二章的 MaxTemperature为例进行讲解.
环境Hadoop 2.6.3 ,伪分布式。
一、添加Hadoop类路径
使用hadoop classpath命令可以获取Hadoop相关全部类路径。把他们添加到我们的系统变量中,这样编译java程序的时候就不需要指定类路径了。
export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH
二、下载源码并编译
直接在本书官方GitHub 获取样例代码及练习文件, 在ch02-mr-into目录中找到我们的源码并进行编译:
javac MaxTemperature.java因为上一步已经添加Hadoop的类,因此不会再报错.
三、把编译好的class文件打包成jar
jar cvfm MaxTemperature.jar manifest.txt *.class可参考我另一篇博文 [Java-创建JAR文件](http://www.bihell.com/java%e5%88%9b%e5%bb%bajar%e6%96%87%e4%bb%b6/ "Java-创建JAR文件")
四、执行MapReduce程序
因为是伪分布式的关系,需要把我们样本文件放到HDFS文件系统中,具体操作可参考另一篇博文 Hadoop 架构初探
hadoop jar MaxTemperature.jar sample.txt output最终结果如下:
五、Idea 编辑MapReduce程序并执行
这里有两篇文章写的很清楚,直接参考即可。
0条评论