Hadoop学习6--里程碑式的开始之执行第一个程序wordcount

一、先在HDFS文件系统创建对应的目录,具体如下:

1、待处理文件存放目录 

/data/wordcount(之所以创建wordcount,是为了对文件分类,对应本次任务名)

命令:hadoop fs -mkdir -p /data/wordcount  (-p是同时创建子目录)

2、存放输出文件目录

/output

命令:hadoop fs -mkdir /output

tip:也可以在已连接了集群的eclipse里建立,即:Map/Reduce Location里

不过这种方式建立的文件,所有者是本机,不是我安装hadoop的用户,是否可用,需要验证下。

3、验证以上的成果:

命令:hadoop fs -ls /

二、自己在本地文件系统(也就是某一个目录下)手动创建一个文件,用于测试

1、创建文件

命令:vi ~/test/inputword(vi命令有意思,如果文件不存在,会自动创建一个空文件)

2、打开文件、手动写入一些测试内容:

hello my

hello master

what slave

hello slave

保存。

3、将该文件上传到hdfs文件系统:

命令:hadoop fs -put ~/test/inputword /data/wordcount/

验证方式:

命令:hadoop fs -text /data/wordcount/inputword

三、运行吧

命令:hadoop jar /work/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar  wordcount  /data/wordcount  /output/wordcount 

tip:

1、注意jar包的路径一定要写对,否则会提示找不到jar包

2、遇到个问题,一直提示重试连接服务器master:

15/10/29 02:26:38 INFO ipc.Client: Retrying connect to server: master/xx.xx.xx.xx:8032. Already tried 5 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)

网上查了下,说是端口还是什么的,这个8032并不是我配置的,和他有关系的可能性不大。

不过其中一句话引起了我的联想,他提到了连接不上JobTacker云云

突然想起来,由于在启动hadoop集群的时候,提示start-all.sh已过时,于是使用的start-dfs.sh

这样在启动后,使用jps验证服务,是少几个的,只有两个namenode,一个datanode和一个默认的jps

于是重新执行了一次 start-all.sh

然后重新运行,成功。

Nice!

把结果截图放上来吧!

四、验证:

命令:-text /output/wordcount/part-r-00000

结果就是对单词出现个数的统计,略。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏生信技能树

linux系统环境变量一文就够

Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。 通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。 ...

4085
来自专栏北京马哥教育

Linux 系统结构详解

Linux系统一般有4个主要部分: 内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管...

5523
来自专栏张戈的专栏

解决Linux下MySQL启动错误Starting MySQL.Manager of pid-file quit without updating file.[FAILED]

上午刚装完 MySQL,启动时报如下错误: Starting MySQL.Manager of pid-file quit without updating f...

3555
来自专栏云计算教程系列

如何在服务器上更改MySQL数据库目录

数据库的大小将会随着时间的推移而增长,有时会超出文件系统的空间。当它们与其余操作系统的部分位于同一分区时,您也可能会遇到I / O争用的问题。RAID,网络块存...

3066
来自专栏向治洪

Rest api简介

理解和使用内容协商 我们的开发者在发送一个 REST API 请求的同时,根据应用场景,针对相同的资源,可能会期待不同的返回形式。 比如,我希望根据用户客户端语...

2386
来自专栏北京马哥教育

巧用tmpfs加速你的linux服务器

默认系统就会加载/dev/shm ,它就是所谓的tmpfs,有人说跟ramdisk(虚拟磁盘),但不一样。象虚拟磁盘一样,tmpfs 可以使用您的 RAM,但它...

3033
来自专栏程序猿

面试问题之mysql修改哪些配置文件可以进行优化?

配置文件中具体修改的内容是什么呢?要是面试官问你,你该怎么回答?你想下,你坐在一间屋子里。 服务器的mysql性能优化,有两个大...

3017
来自专栏北京马哥教育

使用 Nginx 提升网站访问速度

本文主要介绍如何在 Linux 系统上安装高性能的 HTTP 服务器 —— Nginx、并在不改变原有网站结构的条件下用 Nginx 来提升网站的访问速度。 N...

4538
来自专栏Java帮帮-微信公众号-技术文章全总结

Java模板生成word文档/POI生成Excel【面试+工作】

首先要指出的是,实现的思路和freeMarker差不离,将.doc的文档做相应的转换后转为.ftl文档,其中的变量会以${xxx}来代替,这样就可以

4312
来自专栏零基础使用Django2.0.1打造在线教育网站

零基础使用Django2.0.1打造在线教育网站(九):初识后台管理

努力与运动兼备~~~有任何问题可以加我好友或者关注微信公众号,欢迎交流,我们一起进步!

3263

扫码关注云+社区

领取腾讯云代金券