MapReduce(MapReduce),理学-计算机科学技术-计算机网络-网络资源共享与管理-云计算,美国Google公司提出的一个软件架构,用于大规模数据集(大于1TB)的并行运算。概念“Map(映射)”和“Reduce(归纳)”,及其主要思想,都是借用了函数式编程语言和矢量编程语言的特性。2004年,Google公司在国际会议上分别发表了关于MapReduce的论文,公布了其基本原理和主要设计思想。MapReduce最早是由Google公司研究提出的一种面向大规模数据处理的并行计算模型和方法,其设计初衷是为了解决搜索引擎中大规模网页数据的并行化处理问题。Google公司发明了MapReduce之后,首先用其重新改写了其搜索引擎中的Web文档索引处理系统。但由于MapReduce可以普遍应用于很多大规模数据的计算问题,Google公司进一步将其用于公司内部的上万个不同的算法问题和程序中。Map是对一些独立元素组成的概念上的列表的每一个元素进行指定的操作。事实上,每个元素都是被独立操作的,而原始列表没有被更改,因为这里创建了一个新的列表来保存新的答案。