运行Hadoop自带的wordcount单词统计程序

1.使用示例程序实现单词统计


(1)wordcount程序

    wordcount程序在hadoop的share目录下,如下:

1
2
3
4
5
6
7
8
9
[root@leaf mapreduce]# pwd
/usr/local/hadoop/share/hadoop/mapreduce
[root@leaf mapreduce]# ls
hadoop-mapreduce-client-app-2.6.5.jar         hadoop-mapreduce-client-jobclient-2.6.5-tests.jar
hadoop-mapreduce-client-common-2.6.5.jar      hadoop-mapreduce-client-shuffle-2.6.5.jar
hadoop-mapreduce-client-core-2.6.5.jar        hadoop-mapreduce-examples-2.6.5.jar
hadoop-mapreduce-client-hs-2.6.5.jar          lib
hadoop-mapreduce-client-hs-plugins-2.6.5.jar  lib-examples
hadoop-mapreduce-client-jobclient-2.6.5.jar   sources

    就是这个hadoop-mapreduce-examples-2.6.5.jar程序。

 

(2)创建HDFS数据目录

    创建一个目录,用于保存MapReduce任务的输入文件:

1
[root@leaf ~]# hadoop fs -mkdir -p /data/wordcount

    创建一个目录,用于保存MapReduce任务的输出文件:

1
[root@leaf ~]# hadoop fs -mkdir /output

    查看刚刚创建的两个目录:

1
2
3
[root@leaf ~]# hadoop fs -ls /
drwxr-xr-x   - root supergroup          0 2017-09-01 20:34 /data
drwxr-xr-x   - root supergroup          0 2017-09-01 20:35 /output


(3)创建一个单词文件,并上传到HDFS

    创建的单词文件如下:

1
2
3
4
5
6
[root@leaf ~]# cat myword.txt 
leaf yyh
yyh xpleaf
katy ling
yeyonghao leaf
xpleaf katy

    上传该文件到HDFS中:

1
[root@leaf ~]# hadoop fs -put myword.txt /data/wordcount

    在HDFS中查看刚刚上传的文件及内容:

1
2
3
4
5
6
7
8
[root@leaf ~]# hadoop fs -ls /data/wordcount
-rw-r--r--   1 root supergroup         57 2017-09-01 20:40 /data/wordcount/myword.txt
[root@leaf ~]# hadoop fs -cat /data/wordcount/myword.txt
leaf yyh
yyh xpleaf
katy ling
yeyonghao leaf
xpleaf katy


(4)运行wordcount程序

    执行如下命令:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
[root@leaf ~]# hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.5.jar wordcount /data/wordcount /output/wordcount
...
17/09/01 20:48:14 INFO mapreduce.Job: Job job_local1719603087_0001 completed successfully
17/09/01 20:48:14 INFO mapreduce.Job: Counters: 38
        File System Counters
                FILE: Number of bytes read=585940
                FILE: Number of bytes written=1099502
                FILE: Number of read operations=0
                FILE: Number of large read operations=0
                FILE: Number of write operations=0
                HDFS: Number of bytes read=114
                HDFS: Number of bytes written=48
                HDFS: Number of read operations=15
                HDFS: Number of large read operations=0
                HDFS: Number of write operations=4
        Map-Reduce Framework
                Map input records=5
                Map output records=10
                Map output bytes=97
                Map output materialized bytes=78
                Input split bytes=112
                Combine input records=10
                Combine output records=6
                Reduce input groups=6
                Reduce shuffle bytes=78
                Reduce input records=6
                Reduce output records=6
                Spilled Records=12
                Shuffled Maps =1
                Failed Shuffles=0
                Merged Map outputs=1
                GC time elapsed (ms)=92
                CPU time spent (ms)=0
                Physical memory (bytes) snapshot=0
                Virtual memory (bytes) snapshot=0
                Total committed heap usage (bytes)=241049600
        Shuffle Errors
                BAD_ID=0
                CONNECTION=0
                IO_ERROR=0
                WRONG_LENGTH=0
                WRONG_MAP=0
                WRONG_REDUCE=0
        File Input Format Counters 
                Bytes Read=57
        File Output Format Counters 
                Bytes Written=48

    

(5)查看统计结果

    如下:

1
2
3
4
5
6
7
[root@leaf ~]# hadoop fs -cat /output/wordcount/part-r-00000
katy    2
leaf    2
ling    1
xpleaf  2
yeyonghao       1
yyh     2




本文转自 xpleaf 51CTO博客,原文链接:http://blog.51cto.com/xpleaf/1962271,如需转载请自行联系原作者

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/540032.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java for 线程_如何在for循环中使用多线程

import java.util.concurrent.Executor;import java.util.concurrent.Executors;public class Test {private final static Executor executor Executors.newCachedThreadPool();//启用多线程public static void main(String[] args) {for(int i0;i<3;i){final int ji; …

office2010安装出现错误1935的解决方法

安装Office2010 professional plus 2010过程中弹出错误&#xff0c;提示错误 1935&#xff0c;安装程序集组件的过程中发生错误。HRESULT:0x800070BC9 如下图所示&#xff1a; 这个错误是由于电脑.net framework 未安装或安装有错误导致的。解决方法为&#xff1a;下载.net fra…

java linux 服务_java项目部署Linux服务器几种启动方式总结经验

一&#xff1a;两种部署包&#xff1a;部署之前先说下两种包&#xff0c;java项目部署到服务器一般有用war包的&#xff0c;也有用jar包的&#xff0c;微服务spring-cloud普及后大部分打包都是jar&#xff0c;部署之前先搞清楚自己要打war包还是jar包&#xff0c;下面小介绍两种…

HTML温故知新1

什么是 HTML&#xff1f; HTML 是用来描述网页的一种语言。 HTML 指的是超文本标记语言 (Hyper Text Markup Language)HTML 不是一种编程语言&#xff0c;而是一种标记语言 (markup language)标记语言是一套标记标签 (markup tag)HTML 使用标记标签来描述网页 HTML 标签 HTML 标…

java 接口与包_java常用类包接口

类StringIntegerLongFileDateThread(java.lang.ThreadThread类的定义&#xff1a;public class Thread extends Object implements Runnable)包java.lang.*;java.io.*;java.util.*;java.sql.*;java.math.*;接口:ComparableCollectionMapListRunnable(java.lang.Runnable 该接口…

当使用easyui时,表单的onchange事件失效

功能&#xff1a;新增信徒页面&#xff0c;当选择未受洗&#xff0c;设置受洗时间&#xff0c;教堂选项 disabled。 步骤&#xff1a; 在<select>标签里加入 οnchange"xxxxx()"。 在js里编写xxxxx()方法。 测试 教堂选项没有 disabled。 原因&#xff1…

shell脚本:批量修改文件名(文件名中添加字符)

举例如下&#xff1a;批量创建10个随机字符串的文件&#xff0c;要求每个文件名后面添加_aaa,后缀名不变&#xff1b; [rootlocalhost goodboy]# ls adddbbdedf.html baacjaiija.html bhcfaabcfh.html dgjdcdfbca.html efejadfdji.html agdhcdeaje.html bgffbffjcg.html …

java 格式化小数_java-如何格式化小数位数精度

正如评论中指出的那样,如果您只有一个String表示形式,那么就无法判断它实际上是否有重复的部分,或者精度是否不够高.更新我正在研究一个用分子和分母表示为BigIntegers的有理数的类(并假定尽可能地简化).在那里,我实现了一种以十进制字符串形式表示的方法,并提出了以下方法&…

当使用easyui时,jquery的设置disabled属性方法失效

功能&#xff1a;选择未受洗&#xff0c;设置受洗时间&#xff0c;教堂选项 disabled 步骤&#xff1a; 使用了常规的jquery的方法 //两种方法设置disabled属性$(#areaSelect).attr("disabled",true);$(#areaSelect).attr("disabled","disabled&quo…

用户登录提交前,密码加密传输

需求&#xff1a; 因为OA放在外网&#xff0c;为了提高安全性&#xff0c;用户登录时&#xff0c;密码加密传输&#xff0c;数据库密码加密保存。 解决方案&#xff1a; 前台加密用JQUERY MD5插件&#xff0c;这个工具从网上下载的。 后台密码加密&#xff0c;用java的MD5工…

java 内存分布_一图看懂JVM内存分布,永久记住!

经常在说JVM内存分布&#xff0c;也经常去看&#xff0c;但是总是在面试的时候说不清楚或者模糊&#xff0c;甚至有可能说错&#xff0c;只有真正的理解&#xff0c;并且在心中有一个总结构图才能记得清楚说的清楚&#xff01;| JVM总览图java内存区域主要分程序计数器、Java虚…

Winodows10 安全登录(Administrator账户与Microsoft Account关联

我们都知道windows系统最大的管理员是administrator&#xff0c;linux是root&#xff0c;从windows7时代开始&#xff0c;安装操作系统的时候会在最后一步提示创建一个本地账户一直延续到windows8、windows8.1、windows10。近期微软发布了windows10后&#xff0c;很多用户都开始…

微信企业号三个连接模式

在银行里做微信企业号开发有半年多了&#xff0c;因银行封装了调用微信企业号的方法&#xff0c;说是微信企业号开发&#xff0c;其实就是jsp&#xff0c;java代码的编写&#xff0c;银行用的开发工具是EOS&#xff0c;对这个工具我只想说&#xff0c;用久了&#xff0c;就找不…

java opencv安装路径_Java搭建opencv开发环境

由本菜13历经4天才搭建的好的Java OpenCv开发环境带来 .PS:不保证过程都是必须的,必要的.反正我自己成功了... 嘿嘿嘿.官方网站SourceForge点击FilesFiles因为我的机器是Mac,所以选择了unix. 然后下载3.4.3版本3.4.3PS:主要是因为刚开始接触这个OpenCv的时候是用HomeBrew装的, …

iBatis——执行原理

a) 执行原理 1、 将一个对象作为 参数&#xff08;对象可以是Java Bean&#xff0c;Map实现和基本类型的包装类&#xff09;&#xff0c;参数对象将为SQL修改语句和查询语句设定参数值。 2、 执行 mapped statement。这是SQL Maps最重要的步骤。SQL Map框架将创建一个PreparedS…

让IT工作者过度劳累的12个坏习惯

1. QQ、MSN、Gtalk&#xff0c;一个都不少。坏习惯 由于聊天对象与聊天内容的不可控制性&#xff0c;使用即时通讯软件是降低工作效率的罪魁祸首。有调查显示&#xff0c;使用即时通讯软件&#xff0c;工作效率会降低 20%. 2. “总想多看一点点”——忘记上网的目的。 本想查找…

flux java_Java反应式框架Reactor中的Mono和Flux

1. 前言最近写关于响应式编程的东西有点多&#xff0c;很多同学反映对Flux和Mono这两个Reactor中的概念有点懵逼。但是目前Java响应式编程中我们对这两个对象的接触又最多&#xff0c;诸如Spring WebFlux、RSocket、R2DBC。我开始也对这两个对象头疼&#xff0c;所以今天我们就…

MySQL grant 权限,分别可以作用在多个层次上

1. grant 作用在整个 MySQL 服务器上&#xff1a;grant select on *.* to dbalocalhost; -- dba 可以查询 MySQL 中所有数据库中的表。grant all on *.* to dbalocalhost; -- dba 可以管理 MySQL 中的所有数据库2. grant 作用在单个数据库上&#xff1a;grant select on testdb…

用了2年的EOS的感受

EOS是普元信息技术股份有限公司开发的产品&#xff0c;核心是eclipse&#xff0c;给eclipse穿上了很多衣服。不知道普元公司给eclipse捐款了没。 开发人员可以从它的官网免费下载&#xff0c;免费用。免费版的服务器最多链接数是5个人&#xff0c;这5个人在生产上行不通的&…

java 线程分组_Java多线程可以分组,还能这样玩!

前面的文章&#xff0c;栈长和大家分享过多线程创建的3种方式《实现 Java 多线程的 3 种方式》。但如果线程很多的情况下&#xff0c;你知道如何对它们进行分组吗&#xff1f;和 Dubbo 的服务分组一样&#xff0c;Java 可以对相同性质的线程进行分组。来看下线程类 Thread 的所…