`
androidssh
  • 浏览: 115788 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

基于Eclipse的Hadoop应用开发环境的配置

阅读更多

基于Eclipse的Hadoop应用开发环境的配置

配置好了Hadoop运行环境,下一步就要配置,开发环境了。实际上开发环境很好配置,网上很多的帖子,都指向了IBM提供的Hadoop开发工具,这个工具很好用。大家打开这个网址,很容易就能Step by step搞定,http://www.alphaworks.ibm.com/tech/mapreducetools。但是细心的读者不难发现,这个工具似乎是个绝版,到现在似乎还是停留在2007年3月23日呢,而且其支持的Eclipse也是3.3的,Hadoop更是0.17的。很多人在forum上还抱怨,安装上这个工具后,报出错误:Refresh DFS Children has encountered a problem:Refreshing DFS node failed: 1。呵呵,这个问题我也遇到了,我也很郁闷。我心里也在骂IBM这帮官僚如此不思进取。

这两天我在装载Hadoop Core的Examples测试,由于想要多了解些Hadoop,于是就打开了Hadoop的每个子目录,在打开/hadoop-0.19.0/contrib/意外发现了eclipse-plugin,心里不禁窃喜,不知道是不是IBM的这个工具的升级版移到这里还是其他什么原因,工具不是在这里吗?只不过与以前不同,是个jar包!我把hadoop-0.19.0-eclipse-plugin.jar,拷贝到eclipse-SDK-3.4-win32\eclipse\plugins下面,启动eclipse,居然真的安装成功了,真的是该工具的升级版,也没有了那个错误!真的是很意外!界面是这样滴,选择Window->Open Perspective,可见到一个窗口,里面有一个小象图标:Map/Reduce,点击它,会打开一个新的Perspective。然后点击Window->Show View,可以打开一个View,如图1所示,

 

基于Eclipse的Hadoop应用开发环境的配置

图1


在这个View中,我们可以创建一个或多个Hadoop运行环境,这个运行环境,有点像,在Eclipse中配置JDBC数据库连接一样。如图2,图3所示:

 

基于Eclipse的Hadoop应用开发环境的配置

图2

基于Eclipse的Hadoop应用开发环境的配置

图3


配置完成以后,显示如图1左边的树形结构一样,这很像在Eclipse配置了,Tomcat的Server项目一样。配置完成以后,显示如图1左边的树形结构一样,这很像在Eclipse配置了,Tomcat的Server项目一样。

你点击view中的小象图标,很可能会报一个错误:
Cannot connect to the Map/Reduce location: hadoop@ubuntu1
java.io.IOException: Unknown protocol to name node: org.apache.hadoop.mapred.JobSubmissionProtocol
 at org.apache.hadoop.dfs.NameNode.getProtocolVersion(NameNode.java:84)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:585)
 at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:452)
 at org.apache.hadoop.ipc.Server$Handler.run(Server.java:888)

我也遇到这个问题,很让我郁闷,我愿想是不是我的服务器哪里出了问题?后来才知道,是我的端口配置错误了,我在hadoop-site.xml中不是配置了:

<property>
<name>fs.default.name</name>
<value>hdfs://ubuntu1:9000</value>
</property>
<property>
<name>mapred.job.tracker</name>
<value>hdfs://ubuntu1:9001</value>
</property>

这两个端口很重要,9000是namenode的监听端口,而9001是jobtracker的监听端口,在图3的界面上新建DFS location时候,可以看到Map/Reduce Master,当时我还没弄明白,这是什么意思,现在才知道,这是jobtracker所在机器及监听端口,于是我设置成:host=ubuntu1,port=9001,而DFS Master中勾选Use M/R Master Host(意思是:是否使用与JobTracker相同的主机?)我的当然是勾上。端口当然也就是9000了,即host=ubuntu1,port=9000。

于是,连接the Map/Reduce location就不会再出现错误了。下面的用户是cdh,因为我的所有的ubuntu都是cdh的用户的。


我们可以用Web的方式来查看这个两个端口是否工作正常,namenode的Web访问端口是50070,由于我的namenode是建立在ubuntu1上的,因此,我要用Web方式访问namenode,那么在浏览器中敲入地址:http://ubuntu1:50070,你就会看到一个页面,如下图4:

基于Eclipse的Hadoop应用开发环境的配置

图4

 

而9001是也是可以用Web方式来访问的,我的namenode和jobtracker是在一台机器上的,网址是http://ubuntu1:50030,如果你配置成功,可以打开如下图5的页面:

基于Eclipse的Hadoop应用开发环境的配置

图5

tasktracker可以Web方式访问,由于我的tasktracker是建立在ubuntu2上的,因此网址是:http://ubuntu2:50060,如果你配置成功,可以打开如下图6的页面:
基于Eclipse的Hadoop应用开发环境的配置

图6

 

为了能找到本地的Hadoop安装目录,打开Window->Preferences->Hadoop Map/Reduce,将本地的Hadoop安装目录添加进来,这个安装目录实际上就是把hadoop-0.19.0.tar.gz用解压工具解压到一个目录下面。这个目录就是安装目录。我的就是F:\hadoop-0.19.0。如图7所示:

基于Eclipse的Hadoop应用开发环境的配置

图7


点击File->New->Other,在弹出的窗口中会有Map/Reduce项目,如图8所示:

基于Eclipse的Hadoop应用开发环境的配置

图8

 

点击下一步,如图9所示,

基于Eclipse的Hadoop应用开发环境的配置

图9

 

再点击下一步,如图10所示,点击Finish就成了。

基于Eclipse的Hadoop应用开发环境的配置

图10

 

右键点击自己所创建的项目,进入到Properties,打开界面如图11所示,可以在Java Build Path中,设置源代码和Java Doc路径,这样,你就可以看到Hadoop的所有Core源代码了,呵呵

基于Eclipse的Hadoop应用开发环境的配置

图11


右键点击项目中的src,可以添加Mapper类,Reducer类,以及MapReducerDriver类,向导会自动为你生成这三个类的Framework。这对于新手尤其重要。如图12所示:

基于Eclipse的Hadoop应用开发环境的配置

图12


编写完你的代码以后,你可以点击你的Driver类->Run on hadoop,来运行你的Hadoop应用,这个运行是工具自动打包成jar,部署到Hadoop环境上去运行的。呵呵,至此,开发环境就配置好了,你可以尽情地享用Hadoop带给你的快乐了!

分享到:
评论

相关推荐

    基于Eclipse的Hadoop应用开发环境配置

    "基于Eclipse的Hadoop应用开发环境配置" 基于 Eclipse 的 Hadoop 应用开发环境配置是指在 Eclipse 中配置 Hadoop 开发环境,以便开发和运行 Hadoop 应用程序。本节将对基于 Eclipse 的 Hadoop 应用开发环境配置进行...

    基于Eclipse的Hadoop应用开发环境配置.docx

    标题中的“基于Eclipse的Hadoop应用开发环境配置”指的是在Eclipse集成开发环境中设置一个适合开发Hadoop应用程序的环境。Hadoop是一个开源框架,主要用于处理和存储大量数据,而Eclipse是一个流行的Java IDE,通过...

    基于Eclipse的Hadoop应用开发环境配置.pdf

    标题提及的"基于Eclipse的Hadoop应用开发环境配置"是指在Eclipse集成开发环境中设置一个用于开发Hadoop应用程序的环境。Hadoop是Apache软件基金会的一个开源分布式计算框架,它允许处理和存储大规模数据集。在...

    基于Eclipse的Hadoop应用开发环境的配置.doc

    ### 基于Eclipse 的 Hadoop 应用开发环境配置详解 #### 一、引言 随着大数据技术的发展,Hadoop 成为了处理大规模数据集的重要工具之一。而在实际开发过程中,选择合适的集成开发环境(IDE)对于提高开发效率至关...

    基于eclipse的hadoop应用开发

    ### 基于Eclipse的Hadoop应用开发 #### 背景介绍 随着大数据时代的到来,处理海量数据的需求越来越迫切。Hadoop作为一款能够高效处理大规模数据集的开源软件框架,被广泛应用于数据处理领域。为了更好地进行Hadoop...

    基于Eclipse的hadoop-eclipse-plugin-2.0.0插件

    《基于Eclipse的Hadoop开发:hadoop-eclipse-plugin-2.0.0插件详解》 在大数据处理领域,Hadoop作为开源的分布式计算框架,扮演着至关重要的角色。而Eclipse作为Java开发的主流IDE,其强大的功能和丰富的插件支持,...

    Eclipse下搭建Hadoop2.7.3开发环境

    首先,我们需要下载并安装Eclipse IDE,这是一款流行的Java开发工具,也是开发Hadoop应用的理想选择。确保你安装的是Java开发版本,因为Hadoop主要基于Java语言编写。接下来,我们需要获取`hadoop-eclipse-plugin-...

    hadoop-eclipse-plugin1.2.1 and hadoop-eclipse-plugin2.8.0

    为了方便开发者在Eclipse或MyEclipse这样的集成开发环境中高效地进行Hadoop应用开发,Hadoop-Eclipse-Plugin应运而生。这个插件允许开发者直接在IDE中对Hadoop集群进行操作,如创建、编辑和运行MapReduce任务,极大...

    hadoop-eclipse-plugin-2.7.3整合jar包

    hadoop-eclipse-plugin-2.6.4.jar。 基于Eclipse的Hadoop应用开发环境配置工具包 jar包

    windows下连接hadoop2.2.0的eclipse+hadoop插件

    在Windows环境下,开发基于Hadoop的Java应用程序通常需要一个集成开发环境(IDE),Eclipse是其中常用的一个。本文将详细讲解如何使用Eclipse与Hadoop 2.2.0插件进行连接,以便于在Windows操作系统上进行Hadoop相关...

    hadoop搭建与eclipse开发环境设置_hadoop_

    【标题解析】 "Hadoop搭建与eclipse开发环境...通过搭建Hadoop环境,开发者能够实践和理解分布式计算原理,而在Eclipse中配置Hadoop开发环境则提供了高效便捷的编程和调试工具,便于进行MapReduce应用的开发和迭代。

    eclipse集成hadoop+spark+hive开发源码实例

    在Windows操作系统中,Eclipse是一款广泛使用的Java集成开发环境(IDE),它对于开发分布式计算框架如Hadoop、Spark以及数据仓库工具Hive来说,是非常有用的。本教程将深入讲解如何在Eclipse中集成这些组件,以创建...

    hadoop-eclipse-plugin-2.6.0.jar

    总结来说,Hadoop Eclipse Plugin 2.6.0作为Hadoop与Eclipse之间的桥梁,显著提高了Hadoop应用的开发效率,使得开发者能够更专注于业务逻辑的实现,而非环境配置和运维工作。对于需要处理大量数据的企业或个人开发者...

    在Windwos环境下使用Eclipse调试hadoop云计算环境[亲测成功]

    在Windows环境下使用Eclipse调试Hadoop云计算环境,是一项结合了多种技术领域的高级操作,涉及到操作系统、集成开发环境、云计算框架以及分布式系统等多个方面。本文将深入解析这一过程中的关键知识点,帮助读者理解...

    hadoop-2.5.0-eclipse插件

    而Hadoop-2.5.0-eclipse插件则是为Eclipse集成开发环境(IDE)设计的一个扩展,帮助开发者在Eclipse中直接编写、调试和运行Hadoop MapReduce程序。 该插件的安装非常简单,只需将`hadoop-eclipse-plugin-2.5.0.jar`...

    hadoop-eclipse-plugin-1.1.2

    总结来说,Hadoop Eclipse Plugin 1.1.2是Hadoop开发者的得力助手,通过它,开发者可以在熟悉的Eclipse环境中高效地进行Hadoop应用开发,提升工作效率,减少出错几率。无论是初学者还是经验丰富的开发者,都能从中...

    hadoop2.6.0源码和eclipse插件

    通过这个插件,开发者可以更高效地进行Hadoop应用的开发和测试,提高开发效率。 总的来说,这个压缩包为Hadoop的开发和学习提供了必要的资源,无论是深入理解Hadoop的内部工作机制,还是快速构建和调试MapReduce...

    hadoop-eclipse-plugin

    Hadoop Eclipse Plugin是Apache Hadoop项目的一个重要组成部分,它为Eclipse IDE提供了集成开发环境的支持,使得Java开发者能够在Eclipse中直接对Hadoop项目进行创建、编辑和调试。这个压缩包包含了两个版本的Hadoop...

Global site tag (gtag.js) - Google Analytics