美文网首页
Hadoop学习-Windows下使用eclipse开发测试MR

Hadoop学习-Windows下使用eclipse开发测试MR

作者: 风笑天2013 | 来源:发表于2018-07-02 16:33 被阅读46次

    2018-07-02

    Hadoop一般安装在Linux上,写好的MR程序放到Linux上运行。在编写的过程中,有时需要测试程序的正确性,每次都需要放到Linux上运行又太麻烦,今天讲解一种在Windows下使用eclipse开发并测试MR程序的方法。

    1、下载并安装插件 hadoop-eclipse-plugin-2.6.0.jar

    下载地址:链接:https://pan.baidu.com/s/1mafSFOw7sfqOrKGM3Opifw 密码:z7ll

    解压zip文件,把hadoop-eclipse-plugin-2.6.0.jar放入eclipse安装目录下的plugins文件夹,重启eclipse。若插件没有加载,删除eclipse安装目录下configuration文件夹中的org.eclipse.update文件夹,再重启eclipse即可。

    若hadoop-eclipse插件正常加载,打开Windows---->Preference界面,会出现Hadoop Map/Reduce设置项,如下图所示:

    hadoop eclipse插件安装成功

    2、设置Hadoop安装的路径

    把在Linux上安装的Hadoop拷贝到Windows上,并把上一步中解压出的hadoop.dll、winutils.exe两个文件放入Hadoop中bin目录下,如图:

    并在Windows---->Preference界面中设置hadoop的路径,如图:

    设置hadoop路径

    3、连接Hadoop的HDFS

    安装好插件,现在测试能否连接上HDFS。打开Hadoop Map/Reduce视图,依次选择菜单Windows--->Perspective--->Open Perspective ---> Other,打开界面如图:

    打开的Hadoop Map/Reduce视图如图:

    按照如下操作连接Hadoop的HDFS:在上图的空白区域点右键,点击New Hadoop Location菜单,出现下图,并设置DFS(HDFS)和Map/Reduce Master (yarn.resourcemanager.resource-tracker.address)的主机地址和端口号。

    设置主机地址和端口号

    与HDFS连接成功后,会在项目管理区中浏览到HDFS中的文件,如图:

    与HDFS连接成功

    4、写MR程序,以WordCount为例

    参考文章:WordCount程序

    5、可能会遇到的问题

    A.Exception in thread "main" java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.createDirectoryWithMode0(Ljava/lang/String;I)V

    说明hadoop.dll、winutils.exe文件的版本不正确

    网盘中提供的文件是兼容的。

    B.Exception in thread "main" java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z

    从异常信息可以看出,访问权限不足,因为Windows用户不是Linux的组成员用户。

    解决办法:修改hadoop的源代码,修改org.apache.hadoop.io.nativeio.Nativeio.java中的access函数,返回值改为true,如下图所示:

    并拷贝到工程中:

    相关文章

      网友评论

          本文标题:Hadoop学习-Windows下使用eclipse开发测试MR

          本文链接:https://www.haomeiwen.com/subject/zxcluftx.html