MapReduce 程序运行方式

MapReduce 程序运行方式

MapReduce 程序运行方式:
本地运行模式
集群运行模式
本地运行模式:
Eclipse 开发环境下本地运行,好处是方便调试和测试
要点一:MapReduce 程序是被提交给 LocalJobRunner 在本地以单进程的形式运行
要点二:数据输入输出可以在本地,也可以在 HDFS
要点三:怎么实现本地运行?在你的 MapReduce 程序当中不要带集群的配置文件(本质就是由mapreduce.framework.name和yarn.resourcemanager.hostname两个参数决定)
要点四:要想实现本地运行,还得做一件事:给 eclipse 安装 hadoop,
有两种方式处理:
1、这个 hadoop 安装必须是 hadoop 在 windows 平台上编译的对应版本。
需要在 windows 本地配置环境变量:
%HADOOP_HOME% = c:/myProgram/hadoop-2.6.1
%PATH% = %HADOOP_HOME%\bin
并且要将 c:/myProgram/hadoop-2.6.1 的 lib 和 bin 目录替换成 windows 平台编译版本
2、这个 hadoop 也可以 apache 官网的安装包,也可以是其他平台编译的,但是需要windows 平台运行的其他工具支持。
注意,windows 本地也需要安装 hadoop,并且配置环境变量

然后,寻找对应 hadoop 版本的 hadoop.dll 和 winutils.exe 文件,分别做如下处理:
1、hadoop.dll 放置在 c:/windows/system32 文件夹中
2、winutils.exe 放置在$HADOOP_HOME/bin 目录中
3、给 eclipse 配置 hadoop 安装目录,
windows -> preferences ->Hadoop Map/Reduce ->Hadoop Installation Direcotry
然后重启 eclipse 即可

集群运行模式:
打 jar 包,提交任务到集群运行
要点一:首先要把代码打成 jar 上传到 linux 服务器
要点二:用 hadoop jar 的命令去提交代码到 yarn 集群运行
要点三:处理的数据和输出结果应该位于 hdfs 文件系统
要点四:如果需要在 windows 中的 eclipse 当中直接提交 job 到集群,则需要修改

综合以上两种方式的的运行发现,第 1 种和第 2 种比较方便做调试。

猜你喜欢

转载自blog.csdn.net/lv_hulk/article/details/87485220