开发者社区> 问答> 正文

怎么理解MapReduce的执行过程?

怎么理解MapReduce的执行过程?

展开
收起
Medusa 2022-01-13 18:14:40 1950 0
1 条回答
写回答
取消 提交回答
  • MapReduce 简要执行过程如下图所示,

    配图21.png

    可以看出,原始数据以“(k, 原始数据行 data)”的形式输入 Map 阶段;经过Map 阶段的 map() 函数的一系列并行处理后,将中间结果数据以“{(k1, v1), (k1, v2)}”的形式输出到本地;然后经过 MapReduce 框架的中间结果处理阶段的处理(中间结果处理阶段会根据键对数据进行排序和聚合处理,将键相同的数据发送到同一个 reduce() 函数处理);

    接下来就进入 Reduce 阶段,Reduce 阶段接收到的数据都是以“{k1,[v1, v2]...}”形式存在的数据,这些数据经过 Reduce 阶段的处理之后,最终得出“{(k1,v3)}”格式的键值对结果数据,并将最终结果数据输出到 HDFS。

    以上内容摘自《海量数据处理与大数据技术实战》电子书,点击https://developer.aliyun.com/topic/download?id=8205可下载完整版

    2022-01-13 20:33:24
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
阿里云开发者社区官方技术圈,用户产品功能发布、用户反馈收集等。
问答排行榜
最热
最新

相关电子书

更多
Apache Flink 流式应用中状态的数据结构定义升级 立即下载
为并行图数据处理提供高层抽象/语言 立即下载
低代码开发师(初级)实战教程 立即下载