MapReduce
发布人:张子卓  发布时间:2019-12-12   浏览次数:548

官方网站链接:http://hadoop.apache.org/docs/r1.2.1/mapred_tutorial.html

简介

MapReduce是一个分布式计算框架,主要由两部分组成:编程模型和运行时环境。其中,编程模型为用户提供了非常易用的编程接口,用户只需要像编写程序一样实现几个简单函数即可实现一个分布式程序,而其他比较复杂的工作,如节点间的通信、节点失效、数据切分等,全部由MapReduce运行时环境完成,用户无须关心这些细节。

应用场景

MapReduce 能够解决的问题有一个共同特点:任务可以被分解为多个子问题,且这些子问题相对独立,彼此之间不会有牵制,待并行处理完这些子问题后,任务便被解决。在实际应用中,这类问题非常庞大,MapReduce 的一些典型应用,包括分布式GrepURL访问频率统计、Web连接图反转、倒排索引构建、分布式排序等。

功能特性

1.        易于扩展

MapReduce支持线性扩展能力,可以通过向MapReduce集群增加服务器实现集群性能的线性提升。

2.        高可用性

MapReduce并行计算框架使用了多种有效的错误检测和恢复机制,如节点自动重启技术,使集群和计算框架具有对付节点失效的健壮性,能有效处理失效节点的检测和恢复。

3.        就近计算提高效率

MapReduce采用了数据/代码互定位的技术方法,以发挥数据本地化特点,保证运算的高效性。

4.        顺序处理数据、避免随机访问数据

由于磁盘的顺序访问要远比随机访问快得多, MapReduce主要面向顺序式的磁盘访问,从而尽可能的发挥磁盘IO性能。

5.        为用户隐藏系统层细节

MapReduce提供了一种抽象机制将用户与系统层细节隔离开来,使用户可以致力于应用本身的算法设计。


 
copyright@2022长安大学 | 高性能计算平台