本篇亦为学习hadoop----java零基础学习线路指导(3)第三篇,想学习hadoop,没有Java基础,可以查看下面两节内容:
学习hadoop----java零基础学习线路指导视频(1)
学习hadoop---Java初级快读入门指导(2)
本文为操作指导
1.如何引用外部包?
2.使用插件开发端口如何设置?
如果你已经比较熟悉了,可以思考:
1.hadoop脱离集群开发,加入外部包的作用是什么?
2.Hadoop eclipse plugin的作用是什么,自己能否设计一个Hadoop eclipse plugin,该如何开发和设计?
在我们的传统开发中,一般都是有一定的开发工具。比如.net,直接使用visual Studio开发环境,开发程序直接运行,剩下的事情不用管了。
但是Java开发,我们知道最起码可以分为两种常用的开发。
其实其他的语言也可以使用这两种语言,但是Java的这两种方式,用的人更多一些。
这里讲Java开发方式,
一种是采用命令行编译: javac test.java
一种开发工具编译:用eclipse 等开发工具,直接右键run as -->java Application如果不了解可以查看
学习hadoop---Java初级快读入门指导
那么对于hadoop也有两种方式:
一、一种是脱离集群环境的开发:
那么什么是脱离集群环境开发,因为集群也是有一个Java环境的。如果我们编写程序,脱离了集群,那么就是脱离集群开发。可能说到这里,大家还是有点不太明白。
好吧,现在开始上图。
1.添加外部包
当我们建立一个普通Java项目之后,我们单击HDFS-》属性。会弹出右侧属性窗口,属性窗口弹出之后,我们找到Java Build Path,(这时候libraries是空的),我们单击Add External JARs.后面图中没有显示。Add External JARs的意思是添加外部包,什么是外部包,hadoop是由Java程序开发的,所以它会相应的Java包,我们添加的就是这些个相关的包。
图1
2.那么我们选择的是与集群相应的hadoop包。
(1)hadoop文件夹下面的包
这个包的内容,以开发hdfs为例,首先我们解压hadoop包,会形成一个文件夹,这里我们称之为hadoop文件夹。我们找到这个文件夹之后,下面有相应的包,如下图2:
图2
(2)lib文件夹的包
还有一些依赖包如下图3,打开下面lib文件夹,会看到.jar文件,把里面的包都引用进来。
都引用完毕之后,我们会在图1中会看到很多的jar包,这时候,我们就引用成功了。
图3
3.引用成功
当我们单击图1,ok按钮时,我们就会看到项目出现了外部包如图4所示。
图4
总结:
上面因为我们是新手,所以引用了这些包,引用这些包的目的是利于开发。如果不引用这些,对于高手,照样可以开发。这里,你可能还是不太明白,这里建议同学先这样做,等时间长了,自己就会琢磨过来的。
上面准备完毕,我们就可以开发了。开发完毕,我们所做的是必须必须打个Jar包,然后再用上面的命令提交到Hadoop Cluster上去运行
注意的这种开发方式运行采用的是:run as java application
有的同学在使用上面开发方式的时候遇到了问题,这里补充一下:windows eclipse运行mapreduce遇到权限问题该如何解决
二、一种远程连接集群开发:
目前比较方便的方法就是用Hadoop eclipse plugin,可以浏览管理HDFS,自动创建MR程序的模板文件,最爽的就是直接Run on hadoop了。
那么这个该如何配置:
这里引用:
下面帖子
hadoop开发方式之一:利用插件开发指导
引言
在开发调试过程中,需要将程序打包,运行任务后通过命令或web界面查看运行输出及job运行情况,这个比较繁琐,下面介绍的eclipse插件可以简化这个过程,方便调试。
插件安装
Hadoop的eclipse plugin跟hadoop发行版一起分发,到hadoop安装目录\ contrib\eclipse-plugin下可以找到该插件。在试用过程中发现不支持eclipse 3.5,因此要在eclipse3.5及以上版本运行,需要做个修改。修改方法如下:
编辑:src\contrib\eclipse-plugin\src\java\org\apache\hadoop\eclipse\launch\
HadoopApplicationLaunchShortcut.java
做如下修改:
- //import org.eclipse.jdt.internal.debug.ui.launcher.JavaApplicationLaunchShortcut;
- import org.eclipse.jdt.debug.ui.launchConfigurations.JavaApplicationLaunchShortcut;
复制代码
修改完毕后在hadoop目录执行ant package重新打包eclipse插件。
将修改后的插件拷贝到eclipse\dropins\hadoop\plugins目录下完成安装。
插件配置与使用
指定Hadoop安装目录
打开Map/Reduce视图
”Window”->”Open Perspective”->”Other”->“Map/Reduce”.
“Window”->”Show views”->”Other”->”Map Reduce Tools”->”Map/Reduce locations”.
新建 Hadoop location
DFS视图浏览文件
运行MapReduce作业
查看运行结果
上面这种方式,是直接远程连接集群的开发。
注意的这种开发方式运行采用的是:run on haoop
三、总结
对于上面两种方式,新手可能第一种感觉更适应,因为不需要懂得hadoop的相关配置,只需要引用外部包就可以了。但是面对生产环境,这是非常繁琐的。刚开始,同学们可以选择自己喜欢的方式。或则两种方式都可以尝试一下。
来自群组: Hadoop技术组 |