Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序
网友分享,拿来共享一下
这是Hadoop学习全程记录第2篇,在这篇里我将介绍一下如何在Eclipse下写第一个MapReduce程序。
新说明一下我的开发环境:
操作系统:在windows下使用wubi安装了ubuntu 10.10
hadoop版本:hadoop-0.20.2.tar.gz
Eclipse版本:eclipse-jee-helios-SR1-linux-gtk.tar.gz
为了学习方便这个例子在“伪分布式模式”Hadoop安装方式下开发。
第一步,我们先启动Hadoop守护进程。
如果你读过我第1篇文章Hadoop学习全程记录——hadoop 入门应该比较清楚在“伪分布式模式”下启动Hadoop守护进程的方法,在这里就不多说了。
第二步,在Eclipse下安装hadoop-plugin。
1.复制 hadoop安装目录/contrib/eclipse-plugin/hadoop-0.20.2-eclipse-plugin.jar 到 eclipse安装目录/plugins/ 下。
2.重启eclipse,配置hadoop installation directory。
如果安装插件成功,打开Window-->Preferens,你会发现Hadoop Map/Reduce选项,在这个选项里你需要配置Hadoop installation directory。配置完成后退出。
3.配置Map/Reduce Locations。
在Window-->Show View中打开Map/Reduce Locations。
在Map/Reduce Locations中新建一个Hadoop Location。在这个View中,右键-->New Hadoop Location。在弹出的对话框中你需要配置Location name,如myubuntu,还有Map/Reduce Master和DFS Master。这里面的Host、Port分别为你在mapred-site.xml、core-site.xml中配置的地址及端口。如:
Map/Reduce Master
- localhost
- 9001
DFS Master
- localhost
- 9000
配置完后退出。点击DFS Locations-->myubuntu如果能显示文件夹(2)说明配置正确,如果显示"拒绝连接",请检查你的配置(我的配置完成之后只看到了一个文件夹tmp,不知道是什么原因)。
第三步,新建项目。
File-->New-->Other-->Map/Reduce Project
项目名可以随便取,如hadoop-test。
复制 hadoop安装目录/src/example/org/apache/hadoop/example/WordCount.java到刚才新建的项目下面。
第四步,上传模拟数据文件夹。
为了运行程序,我们需要一个输入的文件夹,和输出的文件夹。输出文件夹,在程序运行完成后会自动生成。我们需要给程序一个输入文件夹。
1.在当前目录(如hadoop安装目录)下新建文件夹input,并在文件夹下新建两个文件file01、file02,这两个文件内容分别如下:
file01
- Hello World Bye World
file02
- Hello Hadoop Goodbye Hadoop
2.将文件夹input上传到分布式文件系统中。
在已经启动Hadoop守护进程终端中cd 到hadoop安装目录,运行下面命令:
- bin/hadoop fs -put input input01
这个命令将input文件夹上传到了hadoop文件系统了,在该系统下就多了一个input01文件夹,你可以使用下面命令查看:
- bin/hadoop fs -ls
第五步,运行项目。
1.在新建的项目hadoop-test,点击WordCount.java,右键-->Run As-->Run Configurations
2.在弹出的Run Configurations对话框中,点Java Application,右键-->New,这时会新建一个application名为WordCount
3.配置运行参数,点Arguments,在Program arguments中输入“你要传给程序的输入文件夹和你要求程序将计算结果保存的文件夹”,如:
- hdfs://localhost:9000/user/panhuizhi/input01 hdfs://localhost:9000/user/panhuizhi/output01
这里面的input01就是你刚传上去文件夹。文件夹地址你可以根据自己具体情况填写。
4.点击Run,运行程序。
点击Run,运行程序,过段时间将运行完成,等运行结束后,可以在终端中用命令:
- bin/hadoop fs -ls
查看是否生成文件夹output01。
用下面命令查看生成的文件内容:
- bin/hadoop fs -cat output01/*
如果显示如下,恭喜你一切顺利,你已经成功在eclipse下运行第一个MapReduce程序了。
- Bye 1
- Goodbye 1
- Hadoop 2
- Hello 2
- World 2
Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序相关推荐
- linux及hadoop入门,Hadoop学习全程记录——Hadoop入门
开始学习Hadoop,从今天起,想把我学习hadoop全过程记录一下.我会记录在学习过程中碰到的问题.困难以及解决方法等等,如果你也是刚学hadoop,我们可以一起讨论. 学了几天,好像入门了,在这里 ...
- Win系统下用Eclipse中运行远程hadoop MapReduce程序出现Permission denied错误
Win系统下用Eclipse中运行远程hadoop MapReduce程序出现报错 WARNING: job_local1833185613_0001 org.apache.hadoop.securi ...
- floodlight java_floodlight学习系列(1)——在Eclipse中安装运行floodlight
环境:ubuntu 16.04 前提:已经成功安装了JDK和Ecplise 1.安装floodlight apt-get install build-essential default-jdk ant ...
- Solr基础,在Eclipse中运行Solr
Solr我还是个菜鸟,写这一些文章只是记录一下最近一段时间学习Solr的心得. Solr是什么? 最近我学Solr的时候,一直看到一句话,Solr 是一个可供企业使用的.基于 Lucene 的开箱即用 ...
- 【Javaweb学习笔记】在Eclipse中创建Web项目
[Javaweb学习笔记]在Eclipse中创建Web项目 哈喽大家好,这里是Java框架学习笔记专栏第二期 本期内容--在Eclipse中创建Web项目 前期回顾: 第一期--schema约束 笔者 ...
- eclipse中运行tomcat提示端口被占的4种解决方案
eclipse中运行tomcat提示端口被占的4种解决方案 参考文章: (1)eclipse中运行tomcat提示端口被占的4种解决方案 (2)https://www.cnblogs.com/wyhl ...
- 在eclipse中运行工程时 出现出现ConnectionProperties 的解决方法
输入如下代码 System .out .println("hellow word!!"); 在eclipse中运行工程时 出现 ConnectionProperties Prope ...
- 在Apache Hadoop(多节点群集)中运行Map-Reduce作业
我们将在这里描述在多节点集群中的Apache Hadoop中运行MapReduce Job的过程. 要在多节点群集中设置Apache Hadoop ,可以阅读设置Apache Hadoop多节点群集 ...
- java中eclipse中运行程序的快捷键是什么?
java中eclipse中运行程序的快捷键是什么? 因帅被追杀灬 | 浏览 3393 次 我有更好的答案 2015-02-02 15:35 最佳答案 CTRL+F11,采纳哦 本回答由提问者推 ...
最新文章
- vscode+MinGW+cmake设置轻量ide
- Objective-C中把URL请求的参数转换为字典
- 中国程序员如何升职加薪,也许我们该学学印度人
- MAC上最好用的免费全能音乐播放器VOX 2.6.5
- C语言DFS算法的实现(附完整源码)
- 技术管理—管理书籍推荐
- python基础_格式化输出(%用法和format用法)
- 教室信息管理系统mysql_教师信息管理系统(方式一:数据库为oracle数据库;方式二:存储在文件中)...
- LAMP/LNMP环境下:phpinfo php连接mysql php执行mysql查询 测试代码及响应
- 【推荐】会被快速否决的9种求职者.
- 不可忽视的IT运维管理
- 【HDU 5869】Different GCD Subarray Query【区间不同 gcd 个数】
- 设计模式:UML类图、策略模式、单例模式、工厂模式、观察者模式
- 基于组态软件的35kV变电站监控系统设计简介
- 沟通技巧-《非暴力沟通》书中的精髓:改变对待冲突和矛盾的看法,通过非暴力沟通的方式,可以使生活更加美好。
- 路由器和交换机的转发过程
- 教程|Word/WPS永久更改默认背景颜色
- 34个非常实用的JS一行代码
- 有孚网络协办“大数据助力精准医疗产业论坛”北京站圆满落幕
- aqs clh java_并发编程——详解 AQS CLH 锁
热门文章
- 【错误记录】Android Studio 配置 AspectJ 报错 ( Failed to create Jar file C:\xxx\aspectjtools-1.8.10.jar. )
- 【计算机网络】网络层 : 移动 IP 技术 ( 移动节点 | 本地代理 | 外部代理 | 永久地址 | 转交地址 | 移动 IP 通信过程 )
- Linux服务源码安装后开机自启动04-php-fpm
- Microsoft .NET Pet Shop 4.0 学习之旅(三) - 项目的引用关系2
- 【MFC】在CHtmlView中准确判断页面加载完成
- mybatis入门-第一个程序
- mysql 锁-比较详细、深入的介绍
- TCP/IP学习笔记-如何理解
- entity.Database.SqlQuery() 和entity.Database.SqlCommand()
- 汇编指令中的字母会区分大小写吗?(除了字符型数据,其他地方都不区分)