Eclipse执行Hadoop WordCount
前期工作
我的Eclipse是安装在Windows下的,通过Eclipse执行程序连接Hadoop, 需要让虚拟机的访问地址和本机的访问地址保持在同一域内,虚拟机的地址更改前面的文章介绍过了,如果想改windows本机ip地址,打开“网络和共享中 心“,点击左侧菜单”更改适配器设置“,选择相应连接网络进行IpV4属性地址修改即可。我虚拟机地址为192.168.3.137
准备工作
地址配置好之后,在Eclipse上要安装Hadoop的插件(你可以参考源码自行修改)。
打开Eclipse安装路径---\eclipse\plugins,把hadoop-eclipse-plugin-1.1.2.jar放到这个目录下。
windows本机新建目录(本人在E:\hadoopMapReduceDir),从Linux的Hadoop安装包内复制所有jar放到这个目录下备用。
Ubuntu 13.04上搭建Hadoop环境 http://www.linuxidc.com/Linux/2013-06/86106.htm
Ubuntu 12.10 +Hadoop 1.2.1版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm
Ubuntu上搭建Hadoop环境(单机模式+伪分布模式) http://www.linuxidc.com/Linux/2013-01/77681.htm
Ubuntu下Hadoop环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm
单机版搭建Hadoop环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm
搭建Hadoop环境(在Winodws环境下用虚拟机虚拟两个Ubuntu系统进行搭建) http://www.linuxidc.com/Linux/2011-12/48894.htm
配置工作
打开Eclipse,在菜单栏点击Window,showView选择Other打开选择显示的窗口,如下
在MapReduceTools 目录下找到这只大象,将它拖到Eclipse底部显示(和Console放一块)
打开新建配置窗口,设置连接信息,下图是本机的连接配置名称自己填写,两个端口和username 按图填写(Hadoop默认的端口)
点击Eclipse菜单栏Window ---》Preference,找到HadoopMap/Reduce,点击之后在右侧选择导入Hadoop jar的路径,这样以后新建Hadoop项目,jar包会自动从该路径加载,路径上面已设,添加进来如图:
创建项目
点击File---》other,打开新建对话框,创建Map/ReduceProject项目NewHadoopTest
创建完成后你会看到jar包自动加载到项目之中
拷贝Linux下Hadoop的src目录下的example java项目 到刚刚创建的工程下src下,
Linux下启动Hadoop(用JPS检查是否已启动),在Eclipse连接,连接成功后Hadoop目录就会显示如下
修改代码
现在设置方面基本完成,接下来就是针对WordCount.java所做的修改和HDFS路径配置
打开WordCount.java(可能会报错),将main方法更改如下:
如果GenericOptionsParser报错,将Hadoop-core-1.1.2.jar加到项目中(或放到jar配置路径)。新建a.txt文件,输入下面内容,保存
在hadoopname下user—》hadoop目录创建input文件夹,将文件a.txt上传到HDFS input上,过程如下(不要创建output目录,不然执行会报错,),如果HDFS已有,可Linux使用命令hadoop fs -rmr /output删除)
在选择Wordcount.java,右击run as ---》run configurations,打开Arguments填写input out路径(注意:input和output路径中间是有空格的),这里我设置查询input下所有文件的单词出现次数。
右击WordCount.java,run as -àrun on hadoop 执行
执行结束后,刷新DFS Locations/ use/hadoop
自动生成output文件夹,点击可以看到执行结果。最终结果存放在part-r-00000中,双击查看即可
Eclipse执行Hadoop WordCount的更多相关文章
- 分布式配置 tachyon 并执行Hadoop样例 MapReduce
----------此文章.笔者按着tachyon官网教程进行安装并记录. (本地安装tachyon具体解释:http://blog.csdn.net/u012587561/article/detai ...
- MapReduce编程入门实例之WordCount:分别在Eclipse和Hadoop集群上运行
上一篇博文如何在Eclipse下搭建Hadoop开发环境,今天给大家介绍一下如何分别分别在Eclipse和Hadoop集群上运行我们的MapReduce程序! 1. 在Eclipse环境下运行MapR ...
- 【hadoop】在eclipse上运行WordCount的操作过程
序:本以为今天花点时间将WordCount例子完全理解到,但高估自己了,更别说我只是在大学选修一学期的java,之后再也没碰过java语言了 总的来说,从宏观上能理解具体的程序思路,但具体到每个代码有 ...
- 解决在windows的eclipse上面运行WordCount程序出现的一系列问题详解
一.简介 要在Windows下的 Eclipse上调试Hadoop2代码,所以我们在windows下的Eclipse配置hadoop-eclipse-plugin- 2.6.0.jar插件,并在运行H ...
- eclipse 执行MapReduce程序错误异常汇总(解决Map not fount)
错误一: Error: java.lang.RuntimeException: java.lang.ClassNotFoundException: Class wordCount.wordCount$ ...
- 基于Eclipse的Hadoop应用开发环境配置
基于Eclipse的Hadoop应用开发环境配置 我的开发环境: 操作系统ubuntu11.10 单机模式 Hadoop版本:hadoop-0.20.1 Eclipse版本:eclipse-java- ...
- 基于Eclipse搭建Hadoop源码环境
Hadoop使用ant+ivy组织工程,无法直接导入Eclipse中.本文将介绍如何基于Eclipse搭建Hadoop源码环境. 准备工作 本文使用的操作系统为CentOS.需要的软件版本:hadoo ...
- hadoop wordcount
Mapper // map的数量与数的分片有关系 public class WCMapper extends Mapper<LongWritable, Text, Text, LongWrita ...
- 获取hadoop的源码和通过eclipse关联hadoop的源码
一.获取hadoop的源码 首先通过官网下载hadoop-2.5.2-src.tar.gz的软件包,下载好之后解压发现出现了一些错误,无法解压缩, 因此有部分源码我们无法解压 ,因此在这里我讲述一下如 ...
随机推荐
- Windows Forms (一)
导读 1.什么是 Windows Forms 2.需要学Windows Forms 么? 3.如何手写一个简单的Windows Forms 程序 4.对上面程序的说明 5.Form 类与Control ...
- In-App-Purcharse 官方原文摘要笔记
这并不是一篇关于 In-App-Purcharse 的专业深入分析文章,只是在初次浏览有关IAP官方文档后记录的一些需要注意的地方,就像是课堂笔记. 因为这是原版.并且涉及到支付的内容,所以就不翻译, ...
- spring中得到servletContext对象方法
1.spring得到servletContext,这个和session没有什么关系,上下文可以说是一个session容器,一个上下文可以有多个会话session 在web.xml中有以下配置后.加入s ...
- mysql查询区分大小写与自定义排序
mysql查询区分大小写: SELECT id,developer FROM products WHERE developer != '' and developer = binary('LYNN') ...
- struts2使用struts2-bootstrap-plugin插件
1.下载插件 http://code.google.com/p/struts2-bootstrap/ 2.添加maven依赖 <dependency> <groupId>com ...
- js优化 ----js的有序加载
说到有序加载,我们先来说说js的无序加载: <script src="jquery/jquery-1.4.1.js" type="text/javascript&q ...
- DTCMS栏目首页,循环输出子栏目和新闻
<%set DataTable categoryList=get_category_child_list(channel,0)%> <%foreach(DataRow cdr in ...
- Mysql 存储过程小例子
创建存储过程: DELIMITER $$ USE `database_name`$$ DROP PROCEDURE IF EXISTS `add_or_update_user`$$ )) BEGIN ...
- 做了codility网站上一题:CountBoundedSlices
在写上一随笔之前,在Codility网站上还做了一个道题(非Demo题):CountBoundedSlices,得了60分(害臊呀).今天又重新做了一下这个算法,性能提高了不少,但由于此题不是Demo ...
- (转)Memcached
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态.数据 库驱动网站的速度.Memcache ...