助力云上开源生态 - 阿里云开源大数据平台的发展

简介: 阿里云E-MapReduce (EMR) 是构建在阿里云云服务器 ECS 上的开源 Hadoop、Spark、HBase、Hive、Flink 生态大数据 PaaS 产品。提供用户在云上使用开源技术建设数据仓库、离线批处理、在线流式处理、即时查询、机器学习等场景下的大数据解决方案。在2019杭州云栖大会大数据生态专场上,阿里巴巴高级产品专家夏立为大家分享了阿里云EMR如何助力云上开源生态。

本场视频地址:助力云上开源生态 - 阿里云开源大数据平台的发展

PPT资料:助力云上开源生态 - 阿里云开源大数据平台的发展


本次分享的内容主要分为四个部分:

  1. 发展历程
  2. 云上现状
  3. 云上开源生态的最佳实践
  4. 开源大数据平台的发展展望

一、发展历程
在2015年,阿里巴巴刚开始做开源大数据平台的时候,摆在面前的有三种选择,分别是使用开源的Hadoop体系、CDH和HDP,以及当时的ODPS(现在的MaxCompute)。在那个时候,在大洋彼岸的AWS有一款大数据产品叫做EMR,因此阿里云当时也希望借鉴AWS的经验来做开源大数据平台,希望将大数据能力和云原生能力进行深度结合。
image.png

阿里云在2015年6月份的时候就开始研发自己的开源大数据平台并实现了第一个“镜像+脚本”的版本,这个版本可以实现在最短的时间内将Spark环境搭建起来,而且这个版本很快上线并且发布到GitHub上。当时使用的API很像现在的编排服务,但是这样服务的缺点是只能一次性搭建,因此维护起来非常麻烦。
image.png

在2015年11月份,阿里云正式将E-MapReduce独立云产品推出市场。大家都知道MapReduce的思想来自于谷歌,其代表了大数据理论,因此阿里巴巴将这款大数据产品命名为E-MapReduce,使得大家看到名字就知道其产品的主要作用。
image.png

阿里云E-MapReduce上线之后经过四年的时间发展到现在,E-MapReduce 4.0即将发布版本,并且在新版本中将会支持Hadoop 3.0以及其他新功能。
image.png

发展到今天,阿里云E-MapReduce将会为开源生态提供基础平台,在这个平台上能够让大家选择各种各样的开源产品,并且不会限制大家使用自定义的能力。此外,阿里云E-MapReduce也希望能够将阿里巴巴整个云智能平台的计算能力输出给大家,为大家提供云原生能力和弹性调度能力。未来,E-MapReduce会陆续集成各种开源技术和能力,并且会在这些开源技术之上为大家提供更好的优化的技术,一方面提高稳定性,另外一方面也提升性能,并且也会进行能力的适配。最后一点就是实现云原生的结合,大家使用开源或者自建的大数据方案往往难以和云原生技术或者基础设施进行结合或者难以获得较高的性能,因此阿里巴巴希望通过E-MapReduce能够更好地和云原生技术进行结合。
image.png

总结阿里巴巴E-MapReduce的发展历程,最开始就是实现了一个AWS EMR Like的产品,运行一年之后发现AWS的纯动态方式并不适合国内的场景,因此实现了第一次调整,更加重视常驻集群,并且强化作业合度调度能力。经过第一次调整之后,阿里云发现E-MapReduce的能力还是无法满足需求,因此在第二次调整中提供了完善的Web控制台能力,并且支持了集群的高可用和高安全,也在外围支持了Impala、Kafka、Druid等各个场景下的软件,进而可以更好地支持各个业务场景。除此之外,还支持了深度学习的场景,将经过阿里巴巴自身优化的机器学习算法提供到平台之上。如今,E-MapReduce仍在继续调整,希望能够提供更加完善的大数据平台,更加智能化的服务能力,并且使得底层更加轻量,也使得计算平台整体能力能够对外输出出去。
image.png

二、云上现状
云上的生态概览
下图展示了阿里云的大数据生态概览。在数据来源方面,开源方面有HDFS和Kafka,阿里巴巴则提供了OSS、SLS、RDS以及消息队列等服务。所有数据可以通过开源的Hive、Spark、Flink、Rresto、TensorFlow以及阿里巴巴的MaxCompute、Flink/TensorFlow等服务进行计算,并且还可以与阿里的自身体系如DataWorks、DataV以及QuickBI进行融合。目前,云上大数据方案可以认为是半托管的服务,阿里云能够帮助客户进行运维并且提供运维支撑服务。
image.png

多样的存储选择
在阿里云上,大数据存储主要有三种选择,分别为Hadoop HDFS、Alibaba HDFS和OSS。Hadoop HDFS有三种存储方式,EBS云盘存储数据可靠,但是后台有多个数据副本,因此成本较高,同时通过网络获取数据性能较低;D1本地磁盘以及I1/I2本地词盘性能比较高,成本也比较低,但是数据容易丢失,并且运维成本较高。另外一种选择是Alibaba HDFS,这种方式数据可靠,成本中等,并且数据全部通过网络传输,没有本地计算。OSS标准存储经过阿里巴巴的改造和优化之后可以直接在Hadoop中进行读写,这就是所谓的NativeOSS,NativeOSS存储数据可靠,成本较低,并且通用性比较好,但是性能比较低。因此,进一步在NativeOSS上进行了强化,实现了JindoFS,JindoFS做到了数据可靠,成本较低,性能高并且通用性较好,但是需要额外的存储成本。
image.png

弹性实践
云上做计算需要充分发挥出弹性能力,否则就无法发挥出云的真正价值。而为了发挥出云弹性能力,各大云产商的所有大数据能力都会有Master节点以及一组工作节点Task,Task节点只进行计算但是不会进行数据存储,因此在云上执行计算任务时,Task节点可以进行弹性伸缩,还可以通过Stop Instance来降低成本。在计算任务的高峰期购买Task节点,当高峰期过去之后,就可以释放Task节点。阿里云还为客户提供了一套伸缩机制,既可以按照时间伸缩,也可以按照负载伸缩。

image.png

集群架构
下图展示的是阿里云比较推荐的云上集群架构。如图中左侧所示的是建立的Hadoop集群,其底层全部使用OSS做数据存储,而在OSS之上存在几个独立的计算集群,比如Hive、Spark以及Presto等,而且这些集群全部都是灵活可销毁的。右侧同样建立Hadoop集群,而外侧则提供了Gateway以及Client来接受请求。此外,很多客户可能在云上没有使用OSS或者混合使用OSS和HDFS,借助这种集群架构,可以帮助用户跨越数据存储的障碍。
image.png
三、云上开源生态的最佳实践
存储的选择和优化
在2015年的时候,想要在阿里云上部署大数据平台只有云盘存储可以选择,比如使用SSD等高效存储盘,因此这样的成本会非常高。到2017年左右,阿里云智能团队和ECS团队合作做了本地盘机型,后来还和ECS团队合作做了D1,并且适配了一些国内更能够适应的场景。在2016年,E-MapReduce实现了和OSS的结合,当时因为带宽限制,因此使用的客户较少。到如今,针对之前的发展和合作经验,E-MapReduce可以选择使用JindoFS、Alibaba HDFS等进行存储。
image.png
IaaS层升级
为了让客户更好地使用E-MapReduce,IaaS层也经历了多次升级。第一代是D1和I1,第二代是D2和I2,提供了更高的网络带宽,本地磁盘提供了极高的性能,但同时也带来了运维成本的增加。而通过磁盘的热更换,提供了更好的体验整套的运维的支持链路,并且提供了整套硬件的监测、预警、通知、更换等操作完成主动运维流程。image.png
存储访问优化方案JindoFS
JindoFS的目的在于让大家更好地使用存储与计算分离的架构。在JindoFS的架构之下,所有数据都会存储在OSS上面,所有的计算都放在动态集群上面进行,并且可以随时进行计算伸缩,JindoFS为客户提供了高性能的数据存取能力,和高性价比、无限扩展的弹性存储能力。这里面临的最大挑战就是OSS和计算集群之间的网络带宽,而JindoFS方案中通过本地缓存技术大大降低了时延,提升了性能效率。同时,因为JindoFS采用了基于存储计算分离的架构,因此客户不用担心缓存数据的丢失问题。
image.png
更多的产品的融合和增强
阿里云E-MapReduce融合了更多的产品,比如Spark、Flink、TensorFlow、Elaticsearch、Dataworks等,并在这些产品的基础之上做了增强。
image.png
四、开源大数据平台的发展展望
阿里云E-MapReduce希望基于平台实现更多的方案,希望能够更好地赋能客户的业务场景。比如在实时数仓方案和Spark Streaming SQL中,实现了将业务数据库的数据实时同步到kudo中,可以实现对业务数据库中的数据进行实时OLAP分析的能力。
image.png
未来,EMR将会实现与K8S的融合,希望能够帮助客户更好地节约成本,让用户在阿里云内部可以腾挪自己的资源来完成各种工作,支持客户在业务低峰时将K8S节点加入到Hadoop节点中作为计算补充,在业务高峰时将集群还给业务,这样在不增加额外成本的情况下增加计算能力,更加充分地利用资源。
image.png
很多的用户希望实现多云和混合云,因此阿里巴巴希望为客户提供在线下IDC用法不变的情况下,将冷数据通过专线传输到动态存储,并且使用E-MapReduce等进行动态赋能和线下集群结合起来使用的能力,并且与此同时充分利用线下和线上的能力。image.png


阿里巴巴开源大数据技术团队成立Apache Spark中国技术社区,定期推送精彩案例,技术专家直播,问答区数个Spark技术同学每日在线答疑,只为营造纯粹的Spark氛围,欢迎钉钉扫码加入!
二维码.JPG

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
4天前
|
Kubernetes Cloud Native 开发者
阿里云网络发布 alibaba-load-balancer-controller v1.2.0:开启云原生网关开源新篇章!敬请探索!
**阿里云发布开源版ALB控制器v1.2.0,对齐商业版ALB Ingress Controller v2.10.0。新版本增强了功能特性,提升了用户体验,并提供了最佳实践。功能更新包括自定义标签、QUIC协议支持、转发规则和安全策略等。此外,还引入了ReadinessGate实现滚动升级时的平滑上线和Prestop钩子确保平滑下线。用户可从GitHub获取开源代码,通过Docker Hub拉取镜像,开始使用alibaba-load-balancer-controller v1.2.0。**
49 3
阿里云网络发布 alibaba-load-balancer-controller v1.2.0:开启云原生网关开源新篇章!敬请探索!
|
13天前
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之如何将CSV文件从阿里云OSS同步到ODPS表,并且使用列作为表分区
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
DataWorks产品使用合集之如何将CSV文件从阿里云OSS同步到ODPS表,并且使用列作为表分区
|
2天前
|
SQL 运维 Serverless
阿里云 EMR StarRocks VS 开源版本功能差异介绍
阿里云 E-MapReduce Serverless StarRocks 版是阿里云提供的 Serverless StarRocks 全托管服务,提供高性能、全场景、极速统一的数据分析体验,具备开箱即用、弹性扩展、监控管理、慢 SQL 诊断分析等全生命周期能力。内核 100% 兼容 StarRocks,性能比传统 OLAP 引擎提升 3-5 倍,助力企业高效构建大数据应用。本篇文章重点介绍阿里云 EMR StarRocks 与开源 StarRocks 的对比与客户案例。
25 5
|
2天前
|
Kubernetes Cloud Native 开发者
阿里云网络发布云原生网关 alibaba-load-balancer-controller v1.2.0,持续拥抱开源生态
alibaba-load-balancer-controller开源版本正式推出v1.2.0,能力对齐ALB Ingress Controller商业版v2.10.0。
|
12天前
|
人工智能 大数据 网络虚拟化
引领开放 阿里云持续推动开源生态发展
阿里云基础设施网络承办了“SONiC技术与应用分论坛“暨”第二届SONiC社区中国区分论坛“,携手国内外行业精英,分享了围绕SONiC的实践和创新
|
1月前
|
自然语言处理 监控 Cloud Native
对话阿里云云原生产品负责人李国强:推进可观测产品与OpenTelemetry开源生态全面融合
阿里云宣布多款可观测产品全面升级,其中,应用实时监控服务 ARMS 在业内率先推进了与 OpenTelemetry 开源生态的全面融合,极大丰富了可观测的数据类型及规模,大幅增强了 ARMS 核心能力。本次阿里云 ARMS 产品全面升级的背景是什么?为什么会产生围绕 OpenTelemetry 进行产品演进的核心策略?在云原生、大模型等新型应用架构类型层出不穷的今天,又将如何为企业解决新的挑战?阿里云云原生应用平台产品负责人李国强接受采访解答了这些疑问,点击本文走进全新升级的阿里云可观测产品。
41892 8
|
1月前
|
Java Serverless Apache
9 个开源项目、25 个课题可选丨欢迎报名阿里云云原生开源之夏
2024 开源之夏,阿里云云原生应用平台团队开放了包括 Apache Dubbo/Apache RocketMQ/Apache Seata/Higress/iLogtail /Nacos/Sentinel/Spring Could Alibaba / Serverless Devs 在内,涉及微服务、消息、可观测、Serverless 4 大技术领域的 9 个开源项目。
|
27天前
|
人工智能 监控 开发者
阿里云PAI发布DeepRec Extension,打造稳定高效的分布式训练,并宣布开源!
阿里云人工智能平台PAI正式发布自研的 DeepRec Extension(即 DeepRec 扩展),旨在以更低成本,更高效率进行稀疏模型的分布式训练。
|
28天前
|
存储 分布式计算 DataWorks
【阿里云云原生专栏】云原生下的数据湖建设:阿里云MaxCompute与DataWorks解决方案
【5月更文挑战第26天】在数字化时代,数据成为企业创新的关键。阿里云MaxCompute和DataWorks提供了一种构建高效、可扩展数据湖的解决方案。数据湖允许存储和分析大量多格式数据,具备高灵活性和扩展性。MaxCompute是PB级数据仓库服务,擅长结构化数据处理;DataWorks则是一站式大数据协同平台,支持数据集成、ETL和治理。通过DataWorks收集数据,MaxCompute存储和处理,企业可以实现高效的数据分析和挖掘,从而提升业务洞察和竞争力。
385 0
|
29天前
|
关系型数据库 分布式数据库 数据处理
【PolarDB 开源】PolarDB 在大数据分析中的应用:海量数据处理方案
【5月更文挑战第25天】PolarDB是解决大数据挑战的关键技术,以其高性能和可扩展性处理大规模数据。通过与数据采集和分析工具集成,构建高效数据生态系统。示例代码显示了PolarDB如何用于查询海量数据。优化策略包括数据分区、索引、压缩和分布式部署,广泛应用于电商、金融等领域,助力企业进行精准分析和决策。随着大数据技术进步,PolarDB将继续发挥关键作用,创造更多价值。
171 0