10月10每日打卡
MapReduce模型简介:
MapReduce将复杂的、运行于大规模集群上的并行计算过程高度地抽象到了两个函数:Map和Reduce。
编程容易,不需要掌握分布式并行编程细节,也可以很容易把自己的程序运行在分布式系统上,完成海量数据的计算。
MapReduce采用“分而治之”策略,一个存储在分布式文件系统中的大规模数据集,会被切分成许多独立的分片(split),这些分片可以被多个Map任务并行处理。
MapReduce设计的一个理念就是“计算向数据靠拢”,而不是“数据向计算靠拢”,因为,移动数据需要大量的网络传输开销。
MapReduce框架采用了Master/Slave架构,包括一个Master和若干个Slave。Master上运行JobTracker,Slave上运行TaskTracker。
Hadoop框架是用Java实现的,但是,MapReduce应用程序则不一定要用Java来写。
MadReduce的特点:
MapReduce基于Google发布的并行计算框架。MapReduce论文设计开发,用于大规模数据集(大于1TB)的并行计算,具有如下特点:
易于编程:程序员仅需描述做什么,具体怎么做由系统的执行框架处理。
良好的扩展性:可通过添加结点以扩展集群能力。
高容错性:通过计算迁移或数据迁移等策略提高集群的可用性与容错性。
浙公网安备 33010602011771号