Chinaunix首页 | 论坛 | 博客
  • 博客访问: 325585
  • 博文数量: 31
  • 博客积分: 393
  • 博客等级: 一等列兵
  • 技术积分: 388
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-26 10:23
文章分类

全部博文(31)

文章存档

2013年(16)

2012年(15)

分类: 云计算

2012-09-23 17:37:46



自己乱搞,出了点问题,弄来弄去,总算弄OK了

主要就是版本的问题

我的开发环境是:

Ubuntu,如果安装的版本低,系统更新下

1.安装eclipse

版本是eclipse3.3.X

其他版本会不兼容

下好eclipse-java-3.3-linux.tar.gz文件后

sudo cp **.tar.gz /usr/lib

解压缩sudo -xvf ****.tar.gz

2.获取mapreduce tool plugin

hadoop用0.20.2,注意0.20.1中没有eclipse-hadoop的plugin,

也不要去IBM的官网去下,因为IBM已经把这个工具贡献给hadoop了,IBM官网的那个可能会出版本不兼容的问题

3. 将 hadoop 文件夹下的 contrib/eclipse-plugin/hadoop-*-eclipse-
plugin.jar 拷贝到 eclipse 文件夹下的/plugins 文件夹里
4. 在/home/YourName/testin 下新建 2 个文本文件,里面各输入若干单词
5. 启动 Eclipse

6. 到‘Windows’ -> ‘Preference’ -> 'Hadoop Map/Reduce',配置Hadoop Installation Directory,本例为/usr/local/hadoop

 


7. 在'Windows' -> 'Open Perspective' -> 'Other'里,选择蓝大象'Map/Reduce'


8. 在'Windows' -> 'Show View' -> 'Other'里,选择'MapReduce Tool' -> 'Map/Reduce Location'

9. 在窗口下方出现的黄大象'Map/Reduce Location'空白处,右击选择'New Map/Reduce Location'


10. 在弹出来的对话框里,根据core-site.xml 和 mapred-site.xml里的端口,进行填写:
    其中Location name 任意


11. 在窗口左侧试图的'Project Explorer'里,点击'DFS Location',就会出现HDFS的目录级

12、到这里配置完成了。值得说明的是,JDK需要采用1.6,否则会报如下错误信息。
Unsupported major.minor version 50.0
Unsupported major.minor version 49.0

Unsupported major.minor version 48.0

让你的map reduce程序直接在eclipse运行,而不需要打成jar包放到/hadoop/bin下手动在控制台run的方法

1. 在你建的mapreduce项目的类上,右键 -> Run As -> Open Run Dialog...

2. 在弹出的对话框中,点击 Java Application -> 类名 -> Arguments,如下图所示

 

           在Arguments里填上输入路径(即待处理文件存放目录)和输出路径(即处理结果存放目录),在这里这两个目录都是HDFS的路径,不是本地目录,中间用空格隔开即可。其中的hdfs://localhost:54310  是你在core-site.xml配置文件的里定义的fs.default.name的值。

           另外,/user/MR 目录需要你手工创建(在把本地待处理文件拷贝到HDFS时创建的),/user/MRout不用事先创建,HDFS会为你自动创建此目录。

3. 现在在你写的mapreduce 类里,就想平时写的java程序一样,点击Run,即可在Console里出现跟在控制台里手动run一样的输出。如下图所示:

 

4. 这时,如下图所示,刷新 "user" 文件夹就会出现第2步定义的MRout文件夹,里面的part-r-00000就是mapreduce的处理结果,双击此文件即可打开,查看结果。

 

PS:

当你下次再运行程序时,会报错说 /user/MRout 目录已存在,那么解决方法也很简单,要么在步骤4里把MRout目录,右击选择"Delete";要么在步骤2里改输出路径,当然了,还是前者方便些。

使用说明:
1、查看文件系统。点击eclipse右上角的蓝色大象图标,然后在左边Project Explorer会出现DFS Locations的链接,打开就能看到HDFS的文档结构。
2、运行Job,运行的时候采用Run on hadoop。这里需要注意3点,
A、记得配置输入输出参数。
B、记得在main函数中添加conf.set("hadoop.job.ugi", "root,hadoop"); root是用户名,hadoop是密码。
C、工程需要加载hadoop下lib里的所有包以及hadoop目录下的包,当然不是全部都需要,我觉得麻烦,所以全部加上了。
阅读(2835) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~