阿里巴巴飞天大数据平台E-MapReduce 最新特性

简介: 本次的分享主要围绕以下三个方面:一、EMR产品概述二、EMR产品新特性三、EMR Road Map

本文作者:王晓平,阿里云智能计算平台事业部高级产品经理
以下内容根据演讲视频以及PPT整理而成。
本次的分享主要围绕以下三个方面:
一、EMR产品概述
二、EMR产品新特性
三、EMR Road Map

一、产品概述

  1. E-MapReduce(EMR)是什么

E-MapReduce是阿里云上云原生的开源大数据平台,一款利用开源大数据解决用户分析问题的大数据产品。在2016年6月,E-MapReduce开始公测,2016年9月开始商业化,目前为止E-MapReduce已经商业化三年多的时间。在2019年8月,阿里发布了E-MapReduce (EMR)敏捷版。在2019年10月,阿里巴巴将发布EMR新版本。EMR新版本的Hadoop将会升级到3.1.x。
image.png

  1. EMR产品特性:

EMR产品特性主要展现在以下三个方面。
100%开源组件:EMR产品所使用的大数据组件为100%开源组件。对用户来说,学习成本和迁移成本都相对较低。此外,EMR会根据社区的进度和Bug Fix进行升级,保证产品是根据社区持续升级,实现较好的用户体验。还有,EMR对Spark、Hadoop、Kafka等组件均有性能和应用性的增强。以Spark为例,EMR比较早的集成了Spark AE,推测执行的自动化和特性,同时包括基于Spark来进行物化视图的自研的产品功能。
成本优势:EMR产品相对于用户自建Hadoop更具有成本优势。首先,EMR集群支持弹性伸缩。此处的弹性伸缩指两方面。比如可以根据一个时间点,大部分用户在用开源大数据Hadoop时在每天晚上12点定时跑一个较大的日报任务,而日报任务可能并不需要全天都跑,可能在早上就会跑完。此时使用弹性伸缩有利于节省计算资源。同时也可以采用按负载伸缩的方式,设置YARN Root的队列的某一个指标进行伸缩。用户可以根据自己实际的application排队情况及container分配的情况进行伸缩。其次,EMR支持OSS作为数据存储系统。除HDFS之外可以使用OSS,将HDFS的schema改为OSS路径直接读写OSS。相对来说,可以实现用户的数据分层存储,当用户的热数据放在HDFS里,冷数据则可以放在OSS中。同时实现OSS的生命周期的管理。比如说相对温数据放在一个标准型里,但如果用户的数据是一年前或者几年前的数据,则可以放到归档型或者低频型的更便宜的OSS存储中。第三个特性是EMR在弹性伸缩的基础上同时支持竞价实例。ECS提供了一种比较便宜的实例类型,即竞价实例。用户可以自己出一个价格来实现成本节省。考虑到数据可靠性的影响,竞价实例只能用在计算节点上,若上面有HDFS的数据存储,则不允许使用竞价实例或者弹性伸缩。最后,EMR可以通过作业来拉起一个临时集群。当用户只是想要跑一个大数据的任务,可以通过集群模板设置集群的配置。当作业被触发时,EMR会先创建好临时集群,作业执行完毕,临时集群会被释放掉。通过临时集群的方式实现比较灵活的集群创建和管理。
企业级特性:EMR采用了MIT Kerberos和Apache Ranger实现用户鉴权和用户权限管理。同时提供了EMR APM实现集群和作业的监控。

  1. EMR开源软件栈

下图是EMR目前支持的开源软件栈。最底部是EMR的Docker和ECS。通过ECS是目前在公有云上的主要形态,专有云可以通过Docker的方式,在ECS之上部署一个EMR Agent,主要负责集群管理和集群运行数据的采集,检测集群端前是否出现问题。数据导入时EMR提供了Sqoop,使用开源的DataX组件、Flume组件或SLS将数据导入到EMR上。数据存储这一块EMR支持HDFS和OSS。在OSS之上又开发了jindoFS,jindoFS可以用OSS作为数据湖的概念,通过jindoFS catch的方式做数据加速,提升OSS读取数据的效率。EMR最新版本支持Kudu和Delta Lake,帮助用户有效的构建实时数仓。用户利用Kudu或Delta Lake+流式计算,如Spark或Flink实现实时用户画像、实时推荐等功能。资源调度方面,EMR目前主要使用YARN。计算引擎方面,EMR提供了较多的计算引擎,如Spark、Flink、TensorFlow、Storm、Impala和Presto等。同时在顶部的应用层面提供了NoteBook、Jupyter和Zepplin以及开源的Hue。EMR是一个半托管的形态,用户自建的系统也可以无缝迁移。阿里自研的EMR-Flow可实现工作流的调度。
image.png

  1. EMR集群特性

目前EMR支持五种集群类型。目前五种集群类型的购买是独立的,在购买集群的首页可以选择一个集群类型,如Hadoop,Kafka,或者ZooKeeper集群。
Hadoop大数据平台:一般用户都会购买一个Hadoop平台,然后再实现批计算、流式计算、数据仓库、Ad hoc查询、NoSQL和HBase等。
Kafka:若用户希望实现一个半托管的Kafka,可以购买EMR Kafka系统实现消息系统。
TensorFlow:TensorFlow目前在深度学习、机器学习方面非常受欢迎。EMR可以实现TensorFlow,既On YARN的执行和TensorFlow On Spark的运行。
Druid:EMR对于实时OLAP有一个独立的集群类型druid。
ZooKeeper:在集群功能较大的情况下,用户可以购买独立的ZooKeeper集群实现分布式协调系统。如Kafka、Druid、HDFS、YARN或HBase等都需要ZooKeeper。
image.png

  1. EMR半托管形态

如下图,EMR目前是半托管形态。用户可以通过ssh login的方式登录ECS节点,在ECS节点上部署EMR的服务,如工作流调度、智能诊断、弹性伸缩、资源池等功能。EMR有更低的迁移成本。如果用户是Hadoop基础体系,可拥有更低的迁移成本和学习成本。在用户人力资源不充沛的情况下可以通过EMR有效实现运维成本的节省。
image.png

  1. EMR集群节点类型

EMR集群节点类型主要分以下四种。
Master节点:Master节点部署了HDFS Name Node和YARN Resource Manager。此外,相应的HDFS、YARN、Hive、HBase等组件均已实现了HA机制。
Core节点:Core节点主要部署YARN NodeManager和DataNode。Core节点不支持弹性伸缩。
Task节点:用户可以使用Task进行弹性伸缩或者使用竞价实例的购买方式。如果用户有深度学习需求,可以通过YARN调度GPU资源,同时也可以在Task节点选择购买GPU实例。
Gateway节点:Gateway节点部署Haddop、Spark、Flink等组件的客户端,支持部署不同部门采用不同的参数和配置。因为用户可能会在不同客户端采用不同配置,从而实现用户隔离,用户可以购买Gateway节点实现资源配置上的隔离,同时减轻Master节点上的工作压力。
image.png

二、产品新特性

  1. EMR基础能力升级

计算能力升级:阿里云刚刚发布了第六代企业级实例,既CPU从Skylake升级到Cascade Lake,睿频从2.7GHz加速提升到3.2GHz。由下图可发现,相对于第五代企业级实例,第六代企业级实例CPU性能和内存读写性能都有显著提升。阿里云在2019年九月底上线第六代企业级实例,提供更高的计算性能和更低的产品价格,将技术的红利让给用户。
存储能力升级:EMR已支持ESSD云盘。ESSD云盘全称是企业级SSD云盘。ESSD云盘的单盘IOPS有较大提升,在EMR Kudu,HBase等场景下有较好的表现和性能。ESSD云盘分为PL1、PL2、PL3三种,目前EMR支持PL1级的ESSD云盘,从性能上PL1级已经基本满足用户需求。下图右下对比图分别是ESSD云盘和SSD云盘在块存储方面官网的标称的性能指标。通过对比图可以发现ESSD在单盘IOPS和单盘吞吐性能上都有较大幅度的提升。
image.png

  1. EMR软件栈升级

EMR Hadoop目前支持Hadoop2.7.2和Hadoop2.8.5两个版本,EMR社区版本逐渐成熟之后EMR新版本会将版本升级到Hadoop3.1.2版本。同时,EMR 新版本 新增支持Kudu1.1.0和Delta Lake 0.3。EMR新版本中Apache Flink升级至1.8.1。在Apache社区Flink升级至1.9.0或1.9.1后,EMR会再考虑Apache Flink升级。EMR新版本支持OpenLDAP。如果用户使用的是OpenLDAP,则可以进行平滑迁移。下图右侧是当前EMR已经支持的一些版本,这些版本在EMR 新版本发布后会实时保持和社区更新同步,当前用户已经购买的Hadoop2.7.2和Hadoop2.8.5两个版本也会进行升级更新,保证用户平稳使用。
image.png

  1. EMR生态集成

EMR+DataWorks:EMR作为一个云原生软件,在云上有一系列生态集成,如OSS的集成和ES的集成。一部分用户同时使用了EMR和Elastic Research或云Elastic Research。EMR已经集成了Elastic Research组件,可实现数据的打通。如下图左侧,创建DataWorks项目时选择计算引擎,之前只能选择Maxcompute和实时计算,现在多了两个选择,一个是EMR,另一个是刚开始公测的交互式分析。用户在创建DataWorks作业时,可以将作业运行在一个已经存在的Hadoop集群上。在写的时候只要相应的输入accessKey和accessID,输入EMR的集群id,则可以将这个任务调度到EMR集群上。下图右侧展示了若用户目前以EMR作为计算引擎,只要用户购买了DataWorks相应付费版软件,就可以实现数据血缘跟踪,表和相应列的源数据信息的查看。
image.png

EMR+PAI:生态集成的另外一方面是阿里云上非常受欢迎的深度学习平台PAI。目前大数据+AI是一个非常重要的场景。EMR已经能够实现TensorFlow On YARN和 TensorFlow On Spark,可以通过YARN实现对TensorFlow作业的调度,作业可以跑在CPU以及GPU上。同时,TensorFlow也可以跑在Spark RDD上进行计算。EMR+PAI集成主要体现在将PAI这一个企业级分布式的深度学习计算框架部署在EMR上。因为PAI TensorFlow完全兼容于开源的TensorFlow,同时在显存和分布式通信方面有深度优化。另一方面,PAI的计算模型PAI-FastNN集成了11种经典的神经网络模型,能够跑在EMR上,实现开箱即用的效果。
image.png

4、EMR数据迁移
EMR正在与阿里云上另一款灾备产品HDR-BD进行集成实现数据灾备和迁移。目前支持社区Hadoop2.7.x/3.1.x,HDP,CDH版本。Source和Target集群双活,实现HDFS和Hive数据的迁移,同时支持迁移到OSS上。
image.png

三、Road Map

EMR在未来几个月的主要工作首先是在本地盘实例运维。大部分用户会使用ECS的大数据实例。大数据实例最大的特点是存储成本相对较低,对于数据量比较大的用户是一种比较好的成本优化方式。对于大数据来说,几千或者几万块盘在管理时如果出现单盘的损坏,对作业的稳定性会产生比较大的影响。EMR的主动运维能力主要体现在用户单键点击便可实现对磁盘的隔离,确定对坏盘的较为安全的处理方式。此外,EMR与PAI和DataWorks会有比较深入的融合,构建开源的大数据AI平台以及开源大数据数据仓库。在未来,EMR同时会基于Kudu,Delta以及目前较为流行的Flink,Spark Streaming等计算框架实现实时数仓的构建。在2019年底或2020年初,EMR会推出第二代企业级大数据实例。第二代企业级大数据实例的计算性能会大幅提升,同时成本会持平或小幅节省,将更大的成本优化的空间贡献给客户。
image.png

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
6月前
|
数据可视化 关系型数据库 MySQL
基于python大数据的的海洋气象数据可视化平台
针对海洋气象数据量大、维度多的挑战,设计基于ECharts的可视化平台,结合Python、Django与MySQL,实现数据高效展示与交互分析,提升科研与决策效率。
|
8月前
|
数据采集 SQL 搜索推荐
大数据之路:阿里巴巴大数据实践——OneData数据中台体系
OneData是阿里巴巴内部实现数据整合与管理的方法体系与工具,旨在解决指标混乱、数据孤岛等问题。通过规范定义、模型设计与工具平台三层架构,实现数据标准化与高效开发,提升数据质量与应用效率。
2432 0
大数据之路:阿里巴巴大数据实践——OneData数据中台体系
|
9月前
|
数据采集 存储 大数据
大数据之路:阿里巴巴大数据实践——日志采集与数据同步
本资料全面介绍大数据处理技术架构,涵盖数据采集、同步、计算与服务全流程。内容包括Web/App端日志采集方案、数据同步工具DataX与TimeTunnel、离线与实时数仓架构、OneData方法论及元数据管理等核心内容,适用于构建企业级数据平台体系。
819 1
|
9月前
|
分布式计算 监控 大数据
大数据之路:阿里巴巴大数据实践——离线数据开发
该平台提供一站式大数据开发与治理服务,涵盖数据存储计算、任务调度、质量监控及安全管控。基于MaxCompute实现海量数据处理,结合D2与DataWorks进行任务开发与运维,通过SQLSCAN与DQC保障代码质量与数据准确性。任务调度系统支持定时、周期、手动运行等多种模式,确保高效稳定的数据生产流程。
394 0
大数据之路:阿里巴巴大数据实践——离线数据开发
|
8月前
|
存储 SQL 分布式计算
大数据之路:阿里巴巴大数据实践——元数据与计算管理
本内容系统讲解了大数据体系中的元数据管理与计算优化。元数据部分涵盖技术、业务与管理元数据的分类及平台工具,并介绍血缘捕获、智能推荐与冷热分级等技术创新。元数据应用于数据标签、门户管理与建模分析。计算管理方面,深入探讨资源调度失衡、数据倾斜、小文件及长尾任务等问题,提出HBO与CBO优化策略及任务治理方案,全面提升资源利用率与任务执行效率。
613 0
|
9月前
|
数据采集 人工智能 大数据
10倍处理效率提升!阿里云大数据AI平台发布智能驾驶数据预处理解决方案
阿里云大数据AI平台推出智能驾驶数据预处理解决方案,助力车企构建高效稳定的数据处理流程。相比自建方案,数据包处理效率提升10倍以上,推理任务提速超1倍,产能翻番,显著提高自动驾驶模型产出效率。该方案已服务80%以上中国车企,支持多模态数据处理与百万级任务调度,全面赋能智驾技术落地。
1228 0
|
6月前
|
传感器 人工智能 监控
拔俗多模态跨尺度大数据AI分析平台:让复杂数据“开口说话”的智能引擎
在数字化时代,多模态跨尺度大数据AI分析平台应运而生,打破数据孤岛,融合图像、文本、视频等多源信息,贯通微观与宏观尺度,实现智能诊断、预测与决策,广泛应用于医疗、制造、金融等领域,推动AI从“看懂”到“会思考”的跃迁。
494 0
|
9月前
|
分布式计算 算法 大数据
大数据时代的智能研发平台需求与阿里云DIDE的定位
阿里云DIDE是一站式智能大数据开发与治理平台,致力于解决传统大数据开发中的效率低、协同难等问题。通过全面整合资源、高度抽象化设计及流程自动化,DIDE显著提升数据处理效率,降低使用门槛,适用于多行业、多场景的数据开发需求,助力企业实现数字化转型与智能化升级。
407 1
|
8月前
|
存储 监控 大数据
大数据之路:阿里巴巴大数据实践——事实表设计
事实表是数据仓库核心,用于记录可度量的业务事件,支持高性能查询与低成本存储。主要包含事务事实表(记录原子事件)、周期快照表(捕获状态)和累积快照表(追踪流程)。设计需遵循粒度统一、事实可加性、一致性等原则,提升扩展性与分析效率。
680 0
|
SQL 存储 分布式计算
ODPS技术架构深度剖析与实战指南——从零开始掌握阿里巴巴大数据处理平台的核心要义与应用技巧
【10月更文挑战第9天】ODPS是阿里巴巴推出的大数据处理平台,支持海量数据的存储与计算,适用于数据仓库、数据挖掘等场景。其核心组件涵盖数据存储、计算引擎、任务调度、资源管理和用户界面,确保数据处理的稳定、安全与高效。通过创建项目、上传数据、编写SQL或MapReduce程序,用户可轻松完成复杂的数据处理任务。示例展示了如何使用ODPS SQL查询每个用户的最早登录时间。
1902 1

热门文章

最新文章

相关产品

  • 云原生大数据计算服务 MaxCompute