文档详情

mapreduce计算框架编程模型海量资源.pdf

发布:2025-02-16约4.13千字共4页下载文档
文本预览下载声明

本文由简悦SimpRead转码,原文地址

你好,我是你的Spark老师范东来,今天是本课程基础模块的第一节课,我们来聊聊一个比较基础也比

较重要的内容MapReduce,说它基础,是因为它诞生的时间实在是太久远了,并不是什么新东西,说

它重要则是因为基于它的提出衍生出很多重要的技术,比如我们关心的Spark。

今天的内容主要有以下几点:

1.的三驾马车;

2.MapReduce编程模型与MapReduce计算框架;

3.并发与并行;

4.如何理解分布式计算框架的编程接口与背后的工程实现。

###

的三驾马车

USNew把计算机科学分为4个领域:人工智能、编程语言、系统以及理论。其中的系统领域有两大顶

级会议,一个是ODSI(USENIXconferenceonOperatingSystemsDesignandImplementation),

另一个是SOSP(ACMSymposiumonOperatingSystemsPrinciples),这两个会议在业界的分量非

常重,如果把近几十年关于这两个会议的重要收录到一本书,就可以看作是操作系统和分布式系统

的一本教科书。

从2003年到2006年,分别在ODSI与SOSP了3篇,引起了业界对于分布式系统的

广泛讨论,这三篇分别是:

SOSP2003:TheFileSystem;

ODSI2004:MapReduce:SimplifedDataProcessingonLargeClusters;

ODSI2006:Bigtable:ADistributedStorageSystemforStructuredData。

在2006年,首席执行官提出了云计算这个,的这3篇也被称为

的三驾马车,代表大数据处理的基石、云计算的基础。不过值得注意的是,虽然

作为业界领军者经常会将自己的技术开源出来,但是客观地讲,开源出来的技术并不是

的技术,中间甚至会有代差,这也侧面反映出的技术实力。

第1篇主要讨论分布式文件系统,第2篇主要讨论的分布式计算框架,第3篇则主要讨论

分布式数据。这3篇揭开了分布式系统神秘的面纱,为大数据处理技术做出了重要的贡献。

有了这3篇的理论基础与后续的一系列文章,再加上开源社区强大的实践能力,Hadoop、

HBase、Spark等很快走上了台前,大数据技术开始呈现出一个百花齐放的状态。

###

MapReduce编程模型与MapReduce计算框架

在的第2篇文章中,很明确地表示MapReduce是其实现的一个分布式计算框架,其编程

模型名为MapReduce。开源社区基于这篇的内容,照猫画虎地实现了一个分布式计算框架,也叫

作MapReduce。但一些书籍和网上的资料在提到MapReduce的时候并未说明,容易造成困惑。其实

拿编程模型的名字直接作为计算框架的名字这种例子还有很多,比如Dataflow。而

MapReduce有两个含义,一般来说,在说到计算框架时,我们指的是开源社区的MapReduce计算框

架,但随着新一代计算框架如Spark、Flink的崛起,开源社区的MapReduce计算框架在生产环境中

使用得越来越少,逐渐舞台。

MapReduce的第二个含义是一种编程模型,这种编程模型于古老的函数式编程思想,在Lisp等比

较老的语言中也有相应的实现,并随着计算机CPU单核性能以及数量的飞速提升在分布式计算中

焕发出新的生机。

MapReduce模型将数据处理方式抽象为map和reduce,其中map也叫映射,顾名思义,它表现的

是数据的一对一映射,通常完成数据转换的工作,如下图

显示全部
相似文档