zoukankan      html  css  js  c++  java
  • 013 MapReduce八股文的wordcount应用

    一:Mapreduce编程模型

    1.介绍

      解决海量数据的计算问题。

      》map:映射

      处理不同机器上的块的数据,一个map处理一个块。

      》reduce:汇总

      将map的结果进行汇总合并

      

    2.一个简单的MR程序

      map

      reduce

      input

      output

     

    3.在处理中,格式的流向

      《key,value》

     

    4.需要思考的问题

      处理的数据是什么样的

      map的输出格式

      reduce的输出数据格式

     

    二:完成Wordcount的程序

    1.数据的输入格式说明(默认方式)

      Hadoop Yarn

        》key:代表偏移量

        》value:这一行的值

        》<0,Hadoop Yarn>

     

    2.map处理的数据格式

      Hadoop Yarn

      Hadoop Spark

      分割单词

      每出现一次就这样处理一下

      <Hadoop,1>   <Yarn,1>

      <Hadoop,1>  <Spark,1>  

      

    3.reduce处理的数据格式

      将相同key的value值加在一起就是单词出现的次数

     

    4.新建包以及类

      

     

    5.将程序分成三块的框架

      Mapper类,Reducer类,Driver的run方法

      

      

     

    3.将map与reduce相结合,并在main中运行

      分为四大部分:input,output,mapper,reducer

      

     

    4.Mapper类

      将value转化为字符串

      使用空格分隔

      使用context输出键值对。

      

    5.Reducer类

      

     6.在main()中写入文件操作系统的路径。

      

     7.结果

      

      

    8.出现的结果有些问题,因为没有计数。

      

      IntWritable(1),其参数为1.表示每出现一次就记录一次。

    9.最新的结果

      

    三:打包在yarn上运行

    10.因为需要把jar分发到节点上,所以需要修改

      

    11.打jar包

      

    12.选择jar包的路径

      

    13.选择jar运行的主类

      

    14.运行jar在yarn上

      

    15.运行结果

      

    16.在yarn的管理界面上看

       

    17.在Configuration中search一下mapper

      

      同样可以reduce,或者fileoutput等查阅一些参数。

  • 相关阅读:
    生活不仅有诗远方,还有身体和枸杞
    星空
    住进布达拉宫,我是雪域最大的王。流浪在拉萨街头,我是世间最美的情郎。
    安得与君相决绝,免教生死作相思
    黑马程序员-传智健康项目资料
    黑马程序员-传智健康项目(第十三章)
    黑马程序员-传智健康项目(第十二章)
    黑马程序员-传智健康项目(第十一章)
    黑马程序员-传智健康项目(第十章)
    黑马程序员-传智健康项目(第九章)
  • 原文地址:https://www.cnblogs.com/juncaoit/p/5940281.html
Copyright © 2011-2022 走看看