ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 《Hadoop权威指南》-- mapreduce原理读后感

《Hadoop权威指南》-- mapreduce原理读后感

原创 Linux操作系统 作者:mikeliuy 时间:2012-10-28 16:22:20 0 删除 编辑
读完《Hadoop权威指南》里面有关气象数据集的计算一章后,对于自己以前参与的一个项目有了一些新的想法。


场景:停车场系统,希望统计一年中每月进出车辆的统计分布,原先没有使用hadoop这种分布式架构,就是比较基础的统计。下面以统计每月进入车辆统计为例,进行说明mapreduce。


原始记录中包含车辆进出场的时间,格式“yyyymmddhhmmss”,进/出都有自己的时间,通过不同截取即可得到。
将数据文件存入HDFS,有系统分片分配给个节点。


定义进入map:
    1、读取每条记录
    2、按照格式截取
    3、检查map中是否存在这个的key,如果没有,生成一个,并且value赋值1;如果有,则value+1
    4、循环执行1-3,处理分配的数据片。


  这个map得到如下形式:
     节点一                                            节点二
   【200905,20】                             【200902,200】
   【200908,200】                           【200905,100】
   【200909,150】                           【200909,210】


处理完成,交由reduce进行合并:


    将map函数的处理结果,作为输入。
    逻辑如下:
    将key相同的并且到一个key中,value值相加。最后结果如:
   【200902,200】
   【200905,120】
   【200908,200】
   【200909,360】
得到统计结果。出场以此类推。


mapreduce原理,我认为是利用分布式,进行分而治之的策略,将数据分割成64M(默认),然后又不同的节点去分析,这是每个节点独立运行(节点资源可以认为是独占,而单机多进程并发,还有争夺资源),这样化整为零,计算效率提高;最后将分析结果合并,这个结果要比最初的数据要小的非常多,不是一个数量级的。
整体计算能力、资源使用率等等都要比单机要高。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26812308/viewspace-747770/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-06-18

  • 博文量
    72
  • 访问量
    420987