zoukankan      html  css  js  c++  java
  • MapReduce Shuffle过程的简单理解

      Shuffle过程是MapReduce整个工作流程的核心环节。

      Shuffle过程是指对Map输出结果进行分区、排序、合并、归并处理后输入Reduce的过程。分为Map端和Reduce端两个部分。

    Map端Shuffle过程的理解:

      数据经过Map的逻辑处理后,Map将他们输出,由Shuffle进行排序、合并、归并,最终将数据转化为大磁盘文件,数据被划分为R个分区,R为Reduce任务的数量。

      所谓合并:将具有相同key值value加起来,即<key1,1>  <key1,1>  =====>     <key1,2>

      所谓归并:将具有相同key值的键值对被归并为新的键值对,即<k1,v1> , <k1,v2> , <k1,v3> , <k1,v4>   =====>   <k1,<v1,v2,v3,v4>>

    Reduce端Shuffle过程理解:

      Reduce端的Shuffle过程是从大磁盘文件领取不同Map端的属于自己的数据文件,然后归并,在交给Reduce逻辑进行处理。

      如图:

      

        

  • 相关阅读:
    17-canvas绘制扇形
    16-canvas绘制圆弧
    15-canvas渐变色
    14-canvas绘制柱状图
    13-绘制矩形的简写方式
    12-es6类的方式封装折线图
    11-canvas绘制折线图
    10-canva绘制数据点
    jenkins 环境部署 (yum安装方式)
    BerkeleyDB安装
  • 原文地址:https://www.cnblogs.com/jmdd/p/11882375.html
Copyright © 2011-2022 走看看