设为首页 收藏本站
查看: 711|回复: 0

[经验分享] 在eclipse3.7中配置hadoop1.0.1插件

[复制链接]

尚未签到

发表于 2018-10-31 06:10:56 | 显示全部楼层 |阅读模式
  1.安装插件
  准备程序:
  eclipse-3.7
  hadoop-eclipse-plugin-1.0.1
  (http://download.csdn.net/detail/xiaoping8411/4216102)
  将hadoop-eclipse-plugin-1.0.1复制到eclipse/plugins目录下,重启eclipse。
  2.打开MapReduce视图
  Window-> Open Perspective -> Other 选择Map/Reduce,图标是个蓝色的象。
  3.添加一个MapReduce环境
  在eclipse下端,控制台旁边会多一个Tab,叫“Map/ReduceLocations”,在下面空白的地方点右键,选择“NewHadoop location...”,如图所示:
  在弹出的对话框中填写如下内容:
  Locationname(取个名字)
  Map/Reduce Master(JobTracker的IP和端口,根据mapred-site.xml中配置的mapred.job.tracker来填写)
  DFS Master(NameNode的IP和端口,根据core-site.xml中配置的fs.default.name来填写)
  Username:用户名(默认操作系统用户名,这个没什么用)
  4.使用eclipseHDFS内容进行修改
  经过上一步骤,左侧“Project Explorer”中应该会出现配置好的HDFS,点击右键,可以进行新建文件夹、删除文件夹、上传文件、下载文件、删除文件等操作。
  注意:每一次操作完在eclipse中不能马上显示变化,必须得刷新一下。
  5.创建MapReduce工程
  5.1配置Hadoop路径
  Window-> Preferences 选择“Hadoop Map/Reduce”,点击“Browse...”选择Hadoop文件夹的路径。
  这个步骤与运行环境无关,只是在新建工程的时候能将hadoop根目录和lib目录下的所有jar包自动导入。
  5.2创建工程
  File-> New -> Project 选择“Map/ReduceProject”,然后输入项目名称,创建项目。插件会自动把hadoop根目录和lib目录下的所有jar包导入。
  5.3创建Mapper或者Reducer
  File-> New -> Mapper 创建Mapper,自动继承mapred包里面的MapReduceBase并实现Mapper接口。
  注意:这个插件自动继承的是mapred包里旧版的类和接口,新版的Mapper得自己写。
  Reducer同理。
  6.eclipse中运行WordCount程序
  6.1导入WordCount
  从hadoop自带的hadoop-examples-1.0.1.jar中获取WordCount程序
  6.2配置运行参数
  Run As-> Open Run Dialog... 选择WordCount程序,在Arguments中配置运行参数:/mapreduce/wordcount/input/mapreduce/wordcount/output/1
  分别表示HDFS下的输入目录和输出目录,其中输入目录中有几个文本文件,输出目录必须不存在。
  6.3运行
  Run As-> Run on Hadoop 选择之前配置好的MapReduce运行环境,点击“Finish”运行。
  控制台会输出相关的运行信息。
  6.4查看运行结果
  在输出目录/mapreduce/wordcount/output/1中,可以看见WordCount程序的输出文件。除此之外,还可以看见一个logs文件夹,里面会有运行的日志。
  7 常见问题:
  7.1 目录权限认证问题,问题如下:
  12/04/1111:41:46 ERROR security.UserGroupInformation: PriviledgedActionExceptionas:lzpcause:java.io.IOException:Failed to set permissions of path:\app\hadoop\hadoop-1.0.1\hadoopdata\mapred\staging\lzp1107758487\.staging to0700
  Exceptionin thread "main" java.io.IOException:Failed to set permissions of path:\app\hadoop\hadoop-1.0.1\hadoopdata\mapred\staging\lzp1107758487\.staging to0700
  atorg.apache.hadoop.fs.FileUtil.checkReturnValue(FileUtil.java:682)
  atorg.apache.hadoop.fs.FileUtil.setPermission(FileUtil.java:655)
  解决方法:
  这个问题用该是windows这边的问题,其中\app\hadoop\hadoop-1.0.1\hadoopdata\mapred\staging\lzp11windows7磁盘上的一个目录
  网上查到这是由于0.20.203.0以后的版本的权限认证引起的,只有去掉才行
  修改hadoop源代码,去除权限认证,修改FileUtil.java的checkReturnValue方法,如下:
  privatestatic void checkReturnValue(boolean rv, File p,
  FsPermissionpermission
  ) throws IOException {
  // if(!rv) {
  //throw new IOException("Failed to set permissions of path: " + p +
  //" to " +
  //String.format("%04o", permission.toShort()));
  // }
  }


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-628600-1-1.html 上篇帖子: Hadoop action Note 下篇帖子: Hadoop命令摘录
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表