MapReduce:分布式并行编程框架
(一)概述
1.与传统并行计算框架的对比
传统的并行计算框架(如MPI)采用共享式架构(共享内存&存储、采用存储区域网络SAN)、容错性较差;使用的刀片服务器价格高、集群扩展性差(只能从提高机器性能上进行纵向扩展)。它适用于要求实时性、细粒度计算和计算密集型的场景。
MapReduce采用非共享式架构,容错性好;并且它所用的服务器均为普通PC机(价格便宜)、且横向扩展性好(通过增加服务器即可实现集群扩展)。它适用于批处理、非实时、数据密集型的场景。
2.模型简介
MapReduce将复杂的、运行于大规模集群上的并行计算过程高度地抽象到了两个函数:Map和Reduce。