攻城狮在路上(陆)-- 提交运行MapReduce程序到hadoop集群运行

此种方式不能直接在eclipse中调试代码。

首先需要在src下放置服务器上的hadoop配置文件:core-site.xml\yarn-site.xml\hdfs-site.xml\mapred-site.xml

1、在本地直接调用,执行过程在服务器上(真正企业运行环境)

    a、首先把MR程序打包(jar),直接放到本地,比如C:\\Users\\Administrator\\Desktop\\wc.jar

    b、修改hadoop的源码 ,在新建的Java project中拷贝下面路径的Java代码。路径保持和原来一致。注意:确保项目的lib需要真实安装的jdk的lib

org/apache/hadoop/io/nativeio/NativeIO.java
org/apache/hadoop/mapred/YARNRunner.java

    c、在java project的buildpath中设置,jdk不要使用eclipse自带的,修改为自己本地安装的Jdk。

    d、增加一个属性:

        config.set("mapred.jar", "C:\\Users\\Administrator\\Desktop\\wc.jar");

    e、本地执行main方法,可以使用servlet在界面中调用MR。

2、直接在服务器上,使用命令的方式调用,执行过程也在服务器上

    a、把MR程序打包(jar),传送到服务器上

    b、在服务器上通过: hadoop jar jar路径  类的全限定名  来执行。

posted @ 2016-01-05 12:35  于辰  阅读(345)  评论(0编辑  收藏  举报