mapreduce原理

回答
爱扬教育

2022-09-11

  • 相关推荐
MapReduce是一种分布式计算框架 ,以一种可靠的,具有容错能力的方式并行地处理上TB级别的海量数据集。主要用于搜索领域,解决海量数据的计算问题。
MR有两个阶段组成:Map和Reduce,用户只需实现map()和reduce()两个函数,即可实现分布式计算。

扩展资料

  MapReduce框架由Map和Reduce组成。

  Map()负责把一个大的block块进行切片并计算。

  Reduce() 负责把Map()切片的数据进行汇总、计算。

  MapReduce原语:“相同”key的键值对为一组调用一次Reduce方法,方法内迭代这组数据进行计算。

  要点是:

  MapReduce将输入的数据进行逻辑切片,一片对应一个Map任务;

  Map以并行的方式处理切片;

  框架对Map输出进行排序,然后发给Reduce;

  MapReduce的输入输出数据处于同一个文件系统(HDFS);

  框架负责任务调度、任务监控、失败任务的重新执行;

  框架会对键和值进行序列化,因此键和值需要实现writable接口,框架会对键排序,因此必须实现writableComparable接口。