05 测试hadoop自带词频统计demo

在了解了Hadoop中的存储组件HDFS之后,我们再来看一下Hadoop中另一个重要组件的计算MapReduce。HDFS搞定海量的存储,MapReduce搞定海量的计算。hadoop如其他优秀的开源组件一样,也提供了丰富的demo,下面我们就来看一下如何使用mapreduce自带demo进行词频统计。

1 系统、环境和约束条件

2 操作

  • 1 使用putty登录centos
  • 2 执行以下命令:
# 切换到家目录
cd 
# 进入hadoop的bin目录
cd hadoop-2.5.2/bin
#  vim word,在其中加入以下内容并保存退出,读者可以随意加入别的内容,这是我们待会要统计词频的文件
hello i am zhangli
hello i am xiaoli
hi i am ali
who are you
i am xiaoli
# 上传word文件
./hdfs dfs -put word /word
# 查看上传结果
./hdfs dfs -cat /word
# 开始统计,其中
# ./yarn是执行命令
# jar是表示执行的是jar包
# /root/hadoop-2.5.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.2.jar 表示要执行的jar包
# wordcount  是要执行过程的名字
# /word 是我们上传的待分析的文件在HDFS中的路径
# /output 是我们分析之后结果的输出路径
./yarn jar /root/hadoop-2.5.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.2.jar wordcount /word /output
# 等待一阵子,会有以下输出
19/05/30 12:29:41 INFO client.RMProxy: Connecting to ResourceManager at hadoop1/192.168.100.192:8032
19/05/30 12:29:46 INFO input.FileInputFormat: Total input paths to process : 1
19/05/30 12:29:47 INFO mapreduce.JobSubmitter: number of splits:1
19/05/30 12:29:48 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1559056674360_0002
19/05/30 12:29:50 INFO impl.YarnClientImpl: Submitted application application_1559056674360_0002
19/05/30 12:29:51 INFO mapreduce.Job: The url to track the job: http://hadoop1:8088/proxy/application_1559056674360_0002/
19/05/30 12:29:51 INFO mapreduce.Job: Running job: job_1559056674360_0002
19/05/30 12:30:19 INFO mapreduce.Job: Job job_1559056674360_0002 running in uber mode : false
19/05/30 12:30:19 INFO mapreduce.Job:  map 0% reduce 0%
19/05/30 12:30:36 INFO mapreduce.Job:  map 100% reduce 0%
19/05/30 12:30:46 INFO mapreduce.Job:  map 100% reduce 100%
19/05/30 12:30:49 INFO mapreduce.Job: Job job_1559056674360_0002 completed successfully
19/05/30 12:30:50 INFO mapreduce.Job: Counters: 49
    File System Counters
        FILE: Number of bytes read=111
        FILE: Number of bytes written=194141
        FILE: Number of read operations=0
        FILE: Number of large read operations=0
        FILE: Number of write operations=0
        HDFS: Number of bytes read=156
        HDFS: Number of bytes written=65
        HDFS: Number of read operations=6
        HDFS: Number of large read operations=0
        HDFS: Number of write operations=2
    Job Counters 
        Launched map tasks=1
        Launched reduce tasks=1
        Data-local map tasks=1
        Total time spent by all maps in occupied slots (ms)=15451
        Total time spent by all reduces in occupied slots (ms)=7614
        Total time spent by all map tasks (ms)=15451
        Total time spent by all reduce tasks (ms)=7614
        Total vcore-seconds taken by all map tasks=15451
        Total vcore-seconds taken by all reduce tasks=7614
        Total megabyte-seconds taken by all map tasks=15821824
        Total megabyte-seconds taken by all reduce tasks=7796736
    Map-Reduce Framework
        Map input records=5
        Map output records=17
        Map output bytes=135
        Map output materialized bytes=111
        Input split bytes=89
        Combine input records=17
        Combine output records=10
        Reduce input groups=10
        Reduce shuffle bytes=111
        Reduce input records=10
        Reduce output records=10
        Spilled Records=20
        Shuffled Maps =1
        Failed Shuffles=0
        Merged Map outputs=1
        GC time elapsed (ms)=697
        CPU time spent (ms)=8200
        Physical memory (bytes) snapshot=445980672
        Virtual memory (bytes) snapshot=4215586816
        Total committed heap usage (bytes)=322437120
    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=67
    File Output Format Counters 
        Bytes Written=65
# 查看/output输出,在以下路径中会看到有两个文件,其中_SUCCESS代表成功,part-r-00000代表输出结果
./hdfs dfs -ls /output
以下为输出:
Found 2 items
-rw-r--r--   2 root supergroup          0 2019-05-30 12:30 /output/_SUCCESS
-rw-r--r--   2 root supergroup         65 2019-05-30 12:30 /output/part-r-00000
# 查看词频统计结果
./hdfs dfs -cat /output/part-r-00000
# 以下为输出
ali 1
am  4
are 1
hello   1
hi  1
i   4
who 1
xiaoli  2
you 1
zhangli 1

以上就是利用hadoop自带的词频统计demo进行统计并查看统计结果的过程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值