编写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: eclipse想要开发Hadoop程序,还要引入一个jar包,在 eclipse/plugins/下引入hadoop-eclipse-plugin-2.7.2.jar, 没有找到hadoop-eclipse-plugin-2.7.3.jar.  参考Linux下使用Eclipse开发Hadoop应用程序)

posted @ 2017-04-28 12:13  秦时明月0515  阅读(30552)  评论(0编辑  收藏  举报