首页 > 代码库 > 编写hadoop程序并打成jar包上传到hadoop集群运行

编写hadoop程序并打成jar包上传到hadoop集群运行

准备工作:

    1. hadoop集群(我用的是hadoop-2.7.3版本),这里hadoop有两种:1是编译好的hadoop-2.7.3;2是源代码hadoop-2.7.3-src;

    2. 自己的机器可以是任何系统,只要支持JVM,自己的主机上必须有eclipse,以及hadoop-2.7.3和hadoop-2.7.3-src。(我用的是windows系统,为了方便Linux系统传输数据,我选用了FileZilla,一款ftp工具,具体见www.cnblogs.com/NongSi-Net/p/6744321.html; 如果是linux系统,可以用ssh,ssh能实现     linux系统相互传输数据)

开始:

   1. 打开eclipse,点击File -> New -> Java Project 

                              技术分享

 

    2. 编写Hadoop程序。这里我们以hadoop本身自带的WordCount.java为例,在hadoop-2.7.3-src\hadoop-mapreduce-project\hadoop-mapreduce-examples\src\main\java\org\apache\hadoop\examples\WordCount.java。

        把WordCount.java复制到WC的src里面。它会显示错误。删除package org.apache.hadoop.examples; 保存

                                                   技术分享

        结果还是报错。解决办法如3,引入所需jar包。

    3. 右键WC项目,Build Path -> Configure Bulid Path... -> Libraries -> Add External Jars... 添加所需jar包。hadoop编程所需的jar包在hadoop-2.7.3\share\hadoop\下的文件的下一层的jar包(如果有的话),以及hadoop-2.7.3\share\hadoop\common\lib的里的jar包。 

技术分享    技术分享

       然后就没有错误了。

    4.  打jar包。右键WC项目,Export -> Java -> JAR file

 技术分享      技术分享

    5. 上传到hadoop集群。(其中windows<->linux交互,用ftp工具FileZilla。linux<->linux交互,用ssh)

 

    6. 在hadoop集群中,在上传的hadoop节点上,运行我们编写的hadoop程序:

    hadoop jar wc.jar WordCount   zc/input/   zc/output

 

编写hadoop程序并打成jar包上传到hadoop集群运行