你的位置:首页 > 数据库

[数据库]MapReduce运行环境


Hadoop主机:linux 

开发环境主机:Win7 + Itellij

 

本地运行

  1. 下载hadoop安装包,放到本地目录中。

  2. 配置环境变量$HADOOP_HOME及$PATH=$HADOOP_HOME/bin

  3. 下载winutils.exe放到本地目录的$HADOOP_HOME/bin目录下。

  4. 修改hadoop的源码

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

      5. src目录下不能有hadoop的配置文件

  6. 程序中的配置需要添加:

    Configuration config = new Configuration();
    config.set("fs.defaultFS", "hdfs://node1:8020");//不能使用集群地址,只能指定hdfs地址,本地执行mr任务,但是访问的hdfs还是hadoop主机的。

     

服务器运行

  一、程序打包以后直接放到服务器端执行  

    将打包后的程序,放到服务器上,然后通过命令执行:hadoop jar *.jar

     二、在本地调用,直接运行在服务器上

    1、在src目录下放置hadoop配置文件

    2、修改hadoop源码

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

    3、程序中增加配置

        configuration.set("mapred.jar","D:\\Project\\MyDemo\\etl\\out\\artifacts\\etl\\etl.jar");

                 程序编译成jar后生成的目录位置。