• Linux下使用Eclipse开发Hadoop应用程序


          在前面一篇文章中介绍了如果在完全分布式的环境下搭建Hadoop0.20.2,现在就再利用这个环境完成开发。

          首先用hadoop这个用户登录linux系统(hadoop用户在前面一篇文章中创建的),然后下载eclipse的tar.gz包到/home/hadoop/这个目录下,直接解压缩,于是就会存在/home/hadoop/eclipse这个目录。在开发之前需要将hadoop0.20.2目录下面的一个jar复制到eclipse下面去。(注:在上一篇文章中我将hadoop0.20.2文件夹修改成了hadoop,哈哈,所以下面的目录不要晕哦!)

         第一步:插件复制

              首先寻找到hadoop下面的eclipse-plugin的jar,位置在/home/hadoop/hadoop/contrib/eclipse-plugin/hadoop-0.20.2-eclipse-plugin.jar

         将其赋值到刚才解压的eclipse目录下,目录在/home/hadoop/eclipse/plugins/,打开这个目录后,粘贴即可。

         jar包复制好后即可双击eclipse目录下的eclipse图标,打开eclipse进行开发。

         第二步:准备开发环境

               打开eclipse后,首先windows->preferences,打开如下图界面,按照下图红框提示区域进行配置,其中hadoop的安装位置即hadoop下载后解压的位置。  

    紧接着,同样还是windows->show view->other,在打开的页面中输入map,以便找到Map/Reduce Locations,如下图

    点击OK后,会在eclipse开发工具的下方会显示Map/Reduce Locations 在这个区域里面点击鼠标右键,可以创建一个new Hadoop Location,方便我们可以管理hdfs目录。

    点击"New Hadoop Location"后会弹出一个配置页面,其中参数配置如下图中的标识,点击Finish后,即可在开发环境的左边出现一个hadoop目录导航树。

    hadoop中hdfs目录中的文件可以在user文件夹下面查看到。此时,基本的环境配置都已经完成,下面即可进行正式的开发了。

    第三步:java代码编写

         下面我们简单的阐述下,要完成的功能,在test_2.txt中我们记录了一些手机号在不同时刻拨打的电话,有些是打给10086,有些是打给120,还有些其他的号码,现在我们需要完成的工作就是统计,比如10086被哪些号码打过,还有就是120被哪些号码打过,所以,我们的期望数据和目标数据分别如下图:

       

         首先需要新建一个项目:File->New->Project... 在弹出的窗体中选中Map/Reduce Project,点击Next,输入Project Name 这里是MyHadoop002,然后点击Finish,此时在开发环境的左边可以看到新建的项目,展开新建的项目MyHadoop002,选择src,右键,新建一个class,在弹出的页面中输入Name(我在这里输入是Test_2)后点击Finish(Package选择性填写)。

         Test_2.java里面的代码如下:

         

    第四步:运行程序

         代码编写结束,最后一步既是运行,点击Run->Run Configurations ,弹出的页面中,左边是导航,右边是参数配置界面,首先点击坐标导航中的Java Application,点击"新增"图标,会在Java Application下面生成与Class Name同名的application,这里是Test_2.如下图.

       

          这时候,需要配置Java代码中在main函数中用到的两个参数,即文档的读取路径,以及reduce后文档的输出路径,在main函数中我们有用到args[0]、args[1],所以,这里我们需要输入hdfs路径。

       

        输入完成后点击“Run”,如果没有问题的话,此时即可正常运行了,让我们来看下运行的结果

        

        到此,一个简单的Linux下利用Eclipse开发hadoop的程序即完成了。希望都可以从中学到知识..........

  • 相关阅读:
    【模板】并查集
    P1063能量项链
    多维动归第一题
    7.14测试
    7.12测试
    7.10测试
    几种display:table-cell的应用
    instanceof和typeof的区别
    右侧悬浮广告
    JavaScript判断浏览器类型及版本
  • 原文地址:https://www.cnblogs.com/wangyong/p/4933740.html
Copyright © 2020-2023  润新知