初识MapReduce

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 初识MapReduce

一、神马是高大上的MapReduce


MapReduce是Google的一项重要技术,它首先是一个编程模型,用以进行大数据量的计算。对于大数据量的计算,通常采用的处理手法就是并行计算。但对许多开发者来说,自己完完全全实现一个并行计算程序难度太大,而MapReduce就是一种简化并行计算的编程模型,它使得那些没有多有多少并行计算经验的开发人员也可以开发并行应用程序。这也就是MapReduce的价值所在,通过简化编程模型,降低了开发并行应用的入门门槛


1.1 MapReduce是什么


Hadoop MapReduce是一个软件框架,基于该框架能够容易地编写应用程序,这些应用程序能够运行在由上千个商用机器组成的大集群上,并以一种可靠的,具有容错能力的方式并行地处理上TB级别的海量数据集。这个定义里面有着这些关键词,一是软件框架,二是并行处理,三是可靠且容错,四是大规模集群,五是海量数据集。

因此,对于MapReduce,可以简洁地认为,它是一个软件框架,海量数据是它的“菜”,它在大规模集群上以一种可靠且容错的方式并行地“烹饪这道菜”。


1.2 MapReduce做什么



image.png



简单地讲,MapReduce可以做大数据处理。所谓大数据处理,即以价值为导向,对大数据加工、挖掘和优化等各种处理。

MapReduce擅长处理大数据,它为什么具有这种能力呢?这可由MapReduce的设计思想发觉。MapReduce的思想就是“分而治之”。

(1)Mapper负责“分”,即把复杂的任务分解为若干个“简单的任务”来处理。“简单的任务”包含三层含义:一是数据或计算的规模相对原任务要大大缩小;二是就近计算原则,即任务会分配到存放着所需数据的节点上进行计算;三是这些小任务可以并行计算,彼此间几乎没有依赖关系。

(2)Reducer负责对map阶段的结果进行汇总。至于需要多少个Reducer,用户可以根据具体问题,通过在mapred-site.xml配置文件里设置参数mapred.reduce.tasks的值,缺省值为1。

一个比较形象的语言解释MapReduce:

We want to count all the books in the library. You count up shelf #1, I count up shelf #2. That’s map. The more people we get, the faster it goes.

我们要数图书馆中的所有书。你数1号书架,我数2号书架。这就是“Map”。我们人越多,数书就更快。

Now we get together and add our individual counts. That’s reduce.

现在我们到一起,把所有人的统计数加在一起。这就是“Reduce”。


相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
目录
相关文章
fatal error: ft2build.h: 没有那个文件或目录
fatal error: ft2build.h: 没有那个文件或目录
563 0
|
12月前
|
人工智能 自然语言处理 数据挖掘
claude 3 官网是什么?claude 3 中文镜像怎么用?方法来了!
人工智能领域风起云涌,每一次技术的革新都牵动着全球的目光 👀。 近期,Claude3 的横空出世犹如一颗重磅炸弹 💣,引发了业界的强烈震动
|
资源调度 分布式计算 Kubernetes
给 K8s 装上大数据调度引擎:伏羲架构升级 K8s 统一调度
飞天伏羲作为有着十多年历史的调度团队,在服务好 MaxCompute 大数据平台的过程中,一直在不断通过自我革新赶超业界先进水平,我们经历了 Fuxi 2.0 的这样的大规模升级,今天通过 K8s 统一调度项目又再次实现了系统架构的蜕变,将大数据平台强大的调度能力赋予 K8s 系统,同时去拥抱 K8s 周边丰富的生态。除了集团弹内集群,将来我们在公共云、专有云等多个场景,也会以 K8s 统一调度的方式进行输出,以更好地服务云上的用户,敬请期待!
2136 98
给 K8s 装上大数据调度引擎:伏羲架构升级 K8s 统一调度
|
人工智能 运维 自然语言处理
大数据&AI产品月刊【2024年5月】
大数据&AI产品技术月刊【2024年5月】,涵盖本月技术速递、产品和功能发布、市场和客户应用实践等内容,帮助您快速了解阿里云大数据&AI方面最新动态。
|
存储 SQL 分布式计算
Hologres RoaringBitmap在Lazada选品平台的最佳实践
Lazada选品平台包含全网商家、商品的圈选,通过Hologres RoaringBitmap能力帮助业务突破选品池20w大小限制,6000+选品池调度完成由12h下降至1h,单个选品池调度时间由90s下降至2s。
|
关系型数据库 MySQL 数据库
实时计算 Flink版产品使用合集之在进行数据同步时,遇到了时区问题,怎么设置时区
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
128 1
|
安全 Java 数据库
JUC第二十二讲:JUC线程池-FutureTask详解
JUC第二十二讲:JUC线程池-FutureTask详解
|
SQL 分布式计算 资源调度
EB级计算平台调度系统伏羲DAG 2.0:构建更动态更灵活的分布式计算生态
伏羲(Fuxi)是十年前创立飞天平台时的三大服务之一(分布式存储 Pangu,分布式计算 MaxCompute(内部代号ODPS),分布式调度 Fuxi),过去十年来,伏羲在技术能力上每年都有新的进展和突破,2013年5K,2015年Sortbenchmark世界冠军,2017年超大规模离在/在离线混部能力,2019年的 Yugong 发布并且论文被VLDB2019接受等。
2477 0
EB级计算平台调度系统伏羲DAG 2.0:构建更动态更灵活的分布式计算生态
|
存储 云计算
云计算知识第三讲:云计算的产生和特点
传统IT技术存在利用率低,成本高,维护效率低,能源消耗高等诸多问题,在这种背景下,云计算在2007年被提出。
云计算知识第三讲:云计算的产生和特点
|
SQL 分布式计算 运维
双11史上作业数最多,人工干预最少—MaxCompute 自适应执行引擎DAG2.0为1.5亿分布式作业提供自动化保障
阿里巴巴双11史上作业数最多,但人工干预最少的一次双11技术保障: 从动态并发调整带来的单日10亿计算节点的节省,到数据智能编排带来的高级基线单个作业数十个小时执行时间的缩短,再到全新Bubble执行模式在百万作业获取的30%以上的性能提升。 本文为大家介绍,在2020年阿里巴巴集团双11海量作业数目与突变的数据特性面前,阿里云MaxCompute 新一代 DAG 2.0 执行引擎,通过其自适应的动态执行能力和新架构上的全新计算模式,如何为双11大促数据的及时产出提供自动化保障。
6625 0
双11史上作业数最多,人工干预最少—MaxCompute 自适应执行引擎DAG2.0为1.5亿分布式作业提供自动化保障