MapReduce两种执行环境介绍:本地测试环境,服务器环境

Posted ErBing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MapReduce两种执行环境介绍:本地测试环境,服务器环境相关的知识,希望对你有一定的参考价值。

本地测试环境(windows):
1、在windows下配置hadoop的环境变量
2、拷贝debug工具(winutils.exe)到hadoop目录中的bin目录,注意winutils.exe的版本要与hadoop版本对应,否则可能会报错。
3、修改hadoop的源码 ,注意:确保项目的lib需要真实安装的jdk的lib

4、MapReduce调用的代码需要改变:
  a、src不能有服务器的hadoop配置文件
  b、在调用是使用:
  Configuration config = new  Configuration();
  config.set("fs.defaultFS", "hdfs://node7:8020");//指定namenode的主机名和端口号,因为文件是放在hdfs上的需要从hdfs上读取。
  config.set("yarn.resourcemanager.hostname", "node7");//resourcemanager的主机名。

5、可以进行Debug调试。

 

服务器环境:首先需要在src下放置服务器上的hadoop配置文件

1、在本地直接调用,执行过程在服务器上(真正企业运行环境)
  a、把MapReduce程序打包jar包,直接放到本地
  b、修改hadoop的源码 ,注意:确保项目的lib需要真实安装的jdk的lib
  c、增加一个属性:
    config.set("mapred.jar", "D:\\\\wc.jar");//第一个参数:jar包名加后缀,第二个参数jar存放的位置。
  d、本地执行main方法,servlet调用MapReduce。


2、直接在服务器上,使用命令的方式调用,执行过程也在服务器上
  a、直接new Configuration对象,不用再配置其它信息。会自动从服务器上加载。
  b、把mapreduce程序打包成jar包,传送到服务器上
  c、通过: hadoop jar jar路径  类的全限定名

 

注:修改hadoop的源码

  org\\apache\\hadoop\\io\\nativeio下NativeIO.java文件,复制包名和文件到项目中,修改access方法返回值为true。

  

 

以上是关于MapReduce两种执行环境介绍:本地测试环境,服务器环境的主要内容,如果未能解决你的问题,请参考以下文章

MapReduce与Yarn 的详细工作流程分析

测试项目:本地hadoop环境使用IDEA创建mapreduce项目及调试

转载MapReduce编程 Intellij Idea配置MapReduce编程环境

Windows8.1+Eclipse搭建Hadoop2.7.2本地模式开发环境

Hadoop测试程序编写MapReduce测试Hadoop环境

Hadoop Mapreduce本地调试