马富天PHP博客

Hadoop入门经典运行wordcount

学习笔记 马富天 2016-07-20 17:09:36 7 1

【摘要】Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。

单词计数是最简单也是最能体现MapReduce思想的程序之一,可以称为MapReduce版"Hello World",该程序的完整代码可以在Hadoop安装包的"src/examples"目录下找到。单词计数主要完成功能是:统计一系列文本文件中每个单词出现的次数,如下图所示:

请输入图片名称

执行wordcount程序的基本步骤如下:

1)创建本地的示例文件

在"/home/hadoop"目录下创建文件夹"myfile"

请输入图片名称
  1. [hadoop@hbase12 ~]$ pwd
  2. [hadoop@hbase12 ~]$ mkdir myfile
  3. [hadoop@hbase12 ~]$ ls

接着在"myfile"目录中创建若干个文本文件(名称可以任意),例如:a.txt,b.txt,c.txt,并且分别在文件中写入几个单词,如"Hello world","this is my world","Hello Hadoop"等等,如下图所示:

请输入图片名称
  1. [hadoop@hbase12 ~]$ cd myfile
  2. [hadoop@hbase12 myfile]$ pwd
  3. [hadoop@hbase12 myfile]$ touch a.txt
  4. [hadoop@hbase12 myfile]$ touch b.txt
  5. [hadoop@hbase12 myfile]$ touch c.txt
  6. [hadoop@hbase12 myfile]$ vim a.txt
  7. [hadoop@hbase12 myfile]$ vim b.txt
  8. [hadoop@hbase12 myfile]$ vim c.txt
  9. [hadoop@hbase12 myfile]$ cat a.txt
  10. [hadoop@hbase12 myfile]$ cat b.txt
  11. [hadoop@hbase12 myfile]$ cat c.txt

2)在HDFS(Hadoop分布式文件系统)中创建输入目录(文件夹)

请输入图片名称
  1. [hadoop@hbase12 ~]$ hadoop fs -ls /
  2. [hadoop@hbase12 ~]$ hadoop fs -mkdir /tmp/inputFile
  3. [hadoop@hbase12 ~]$ hadoop fs -ls /tmp/

3)将本地的myfile文件上传到HDFS集群的inputFile目录下面

请输入图片名称
  1. [hadoop@hbase12 ~]$ cd ~
  2. [hadoop@hbase12 ~]$ pwd
  3. [hadoop@hbase12 ~]$ hadoop fs -put myfile/ /tmp/inputFile
  4. [hadoop@hbase12 ~]$ hadoop fs -ls /tmp/inputFile
  5. [hadoop@hbase12 ~]$ hadoop fs -ls /tmp/inputFile/myfile

4)在集群上运行wordcount程序

备注:以/tmp/inputFile作为输入目录,/outputFile作为输出目录:

请输入图片名称
  1. [hadoop@hbase12 ~]$ cd hadoop-2.6.0/
  2. [hadoop@hbase12 hadoop-2.6.0]$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar wordcount /tmp/inputFile/myfile /outputFile

5)MapReduce执行过程显示信息

6)查看HDFS上output目录内容

请输入图片名称
  1. [hadoop@hbase12 hadoop-2.6.0]$ hadoop fs -ls /
  2. [hadoop@hbase12 hadoop-2.6.0]$ hadoop fs -ls /outputFile
  3. [hadoop@hbase12 hadoop-2.6.0]$ hadoop fs -cat /outputFile/part-r-00000

版权归 马富天PHP博客 所有

本文标题:《Hadoop入门经典运行wordcount》

本文链接地址:http://www.mafutian.net/165.html

转载请务必注明出处,小生将不胜感激,谢谢! 喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

1

0

上一篇《 使用jQuery的插件juqery.qrcode.js生成二维码 》 下一篇《 说一说魔术引号(Magic Quote) 》
分享到:

所有评论

  1. 首页
  2. 上一页
  3. 1
  4. 下一页
  5. 尾页
  6. 第1页
  7. 每页12条
  8. 共1页
  9. 共1条
评论审核未开启
表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情
验证码