Type: concept
Confidence: 0.95
Created: 2026-04-17
Updated: 2026-04-17
Tags: 技术研究计算理论

MapReduce

概述

MapReduce 是一种用于大规模数据处理的编程模型,用户只需定义 Map 和 Reduce 两个函数,系统便能自动将计算并行化并分布到数千台机器上执行。

关键内容

编程模型

Map:    (k1, v1)       → list(k2, v2)
Reduce: (k2, list(v2)) → list(v2)

执行流程

  1. 输入分片:将输入数据分割为 M 个分片
  2. Map 阶段:每个 Worker 处理一个分片,输出中间键值对
  3. Shuffle & Sort:按中间键排序,将相同键的数据聚集
  4. Reduce 阶段:对每个键执行 Reduce 函数
  5. 输出合并:结果存储在 R 个输出文件中

核心特性

工业影响

来源

相关