阿里云大数据ACP认证知识点梳理7——MAP REDUCE

简介:

image

1、输入数据:对文本进行分片,将每片内的数据作为单个Map Worker的输入。

2、Map阶段:Map处理输入,每获取一个数字,将数字的Count 设置为1,并将此对输出,此时以Word作为输出数据的Key。

3、Shuffle>合并排序:在Shuffle阶段前期,首先对每个Map Worker的输出,按照Key值(即Word值)进行排序。排序后进行Combiner操作,即将Key值(Word值)相同的Count累加,构成一个新的对。此过程被称为合并排序。
4、Shuffle>分配Reduce:在Shuffle阶段后期,数据被发送到Reduce端。Reduce Worker收到数据后依赖Key值再次对数据排序。

5、Reduce阶段:每个Reduce Worker对数据进行处理时,采用与Combiner相同的逻辑,将Key值(Word 值)相同的Count累加,得到输出结果。

6、输出结果数据。

**MAPREDUCE规则限制:
**

MaxCompute提供三个版本的MapReduce编程接口,如下所示:

MaxCompute MapReduce、MaxCompute的原生接口,执行速度更快,开发更便捷,不暴露文件系统。

MR2(扩展MapReduce):对MaxCompute MapReduce的扩展,支持更复杂的作业调度逻辑。MapReduce的实现方式与MaxCompute原生接口一致。

Hadoop兼容版本:高度兼容Hadoop MapReduce ,与MaxCompute原生MapReduce,MR2不兼容。

不能通过MapReduce读写外部表中的数据。

MaxCompute MapReduce的输入、输出,支持MaxCompute内置类型的Bigint、Double、String、Datetime和Boolean类型,不支持您自定义类型。

接受多表输入,且输入表的Schema可以不同。在map函数中,您可以获取当前Record对应的Table信息。

输入可以为空,不支持视图(View)作为输入。

Reduce接受多路输出,可以输出到不同表,或者同一张表的不同分区。不同输出的Schema可以不同。不同输出间通过label进行区分,默认输出不必加label,但目前不接受没有输出的情况。

**JAVA沙箱:
**

MaxCompute MapReduce及UDF程序在分布式环境中运行时,受到Java沙箱的限制(MapReduce作业的主程序,例如MR Main则不受此限制),具体限制如下所示。

不允许直接访问本地文件,只能通过MaxCompute MapReduce/Graph提供的接口间接访问。

读取resources选项指定的资源,包括文件、Jar包和资源表等。

通过System.out和System.err输出日志信息,可以通过MaxCompute客户端的Log命令查看日志信息。

不允许直接访问分布式文件系统,只能通过MaxCompute MapReduce/Graph访问到表的记录。

不允许JNI调用限制。

不允许创建Java线程,不允许启动子进程执行Linux命令。

不允许访问网络,包括获取本地IP地址等,都会被禁止。

Java反射限制:suppressAccessChecks权限被禁止,无法setAccessible某个private的属性或方法,以达到读取private属性或调用private方法的目的。

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
2月前
|
人工智能 数据管理 Serverless
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
404 2
|
2月前
|
人工智能 运维 Cloud Native
、你如何看待阿里云数据库走向Serverless与AI驱动的一站式数据平台?
、你如何看待阿里云数据库走向Serverless与AI驱动的一站式数据平台?
149 2
|
2月前
|
存储 数据可视化 数据管理
基于阿里云服务的数据平台架构实践
本文主要介绍基于阿里云大数据组件服务,对企业进行大数据平台建设的架构实践。
714 2
|
2月前
|
人工智能 数据管理 大数据
阿里云数据库走向Serverless与AI驱动的一站式数据平台是一个很有前景和意义的发展方向
阿里云数据库走向Serverless与AI驱动的一站式数据平台是一个很有前景和意义的发展方向
33 2
|
21天前
|
机器学习/深度学习 分布式计算 数据挖掘
阿里云 MaxCompute MaxFrame 开启免费邀测,统一 Python 开发生态
阿里云 MaxCompute MaxFrame 正式开启邀测,统一 Python 开发生态,打破大数据及 AI 开发使用边界。
198 1
|
1月前
|
人工智能 DataWorks 数据可视化
心动基于阿里云DataWorks构建游戏行业通用大数据模型
心动游戏在阿里云上构建云原生大数据平台,基于DataWorks构建行业通用大数据模型,如玩家、产品、SDK、事件、发行等,满足各种不同的分析型应用的要求,如AI场景、风控场景、数据分析场景等。
334 1
|
2月前
|
人工智能 运维 数据管理
阿里云数据库走向Serverless与AI驱动的一站式数据平台
阿里云数据库走向Serverless与AI驱动的一站式数据平台
271 2
|
4月前
|
分布式计算 Hadoop
Hadoop系列 mapreduce 原理分析
Hadoop系列 mapreduce 原理分析
40 1
|
7月前
|
分布式计算 Hadoop 大数据
Hadoop学习:深入解析MapReduce的大数据魔力之数据压缩(四)
Hadoop学习:深入解析MapReduce的大数据魔力之数据压缩(四)
|
7月前
|
分布式计算 Hadoop 大数据
Hadoop学习:深入解析MapReduce的大数据魔力(三)
Hadoop学习:深入解析MapReduce的大数据魔力(三)