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

来源:互联网 发布:域名注册ip查询 编辑:程序博客网 时间:2024/06/07 07:26
本地测试环境(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路径  类的全限定名
原创粉丝点击