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

简介: 阿里云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

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
29天前
|
关系型数据库 分布式数据库 数据库
成都晨云信息技术完成阿里云PolarDB数据库产品生态集成认证
近日,成都晨云信息技术有限责任公司(以下简称晨云信息)与阿里云PolarDB PostgreSQL版数据库产品展开产品集成认证。测试结果表明,晨云信息旗下晨云-站群管理系统(V1.0)与阿里云以下产品:开源云原生数据库PolarDB PostgreSQL版(V11),完全满足产品兼容认证要求,兼容性良好,系统运行稳定。
|
2月前
|
人工智能 数据管理 Serverless
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
阿里云数据库走向Serverless与AI驱动的一站式数据平台具有重大意义和潜力
407 2
|
2月前
|
存储 数据可视化 数据管理
基于阿里云服务的数据平台架构实践
本文主要介绍基于阿里云大数据组件服务,对企业进行大数据平台建设的架构实践。
719 2
|
2月前
|
人工智能 数据管理 大数据
阿里云数据库走向Serverless与AI驱动的一站式数据平台是一个很有前景和意义的发展方向
阿里云数据库走向Serverless与AI驱动的一站式数据平台是一个很有前景和意义的发展方向
35 2
|
24天前
|
机器学习/深度学习 分布式计算 数据挖掘
阿里云 MaxCompute MaxFrame 开启免费邀测,统一 Python 开发生态
阿里云 MaxCompute MaxFrame 正式开启邀测,统一 Python 开发生态,打破大数据及 AI 开发使用边界。
307 1
|
1月前
|
SQL 存储 监控
构建端到端的开源现代数据平台
构建端到端的开源现代数据平台
54 4
|
1月前
|
人工智能 Cloud Native 安全
阿里云携手用友,共话企业服务生态新未来
3月2日,以“数无限 智无边 融无界”为主题的2024用友全球生态大会在北京召开。用友集中展示了用友BIP生态的新实践、新成果,并发布2024生态策略。阿里云参展并共同见证这一重要时刻,共话企业服务生态新未来,共同加速构建全球领先的企业数智化生态。
|
1月前
|
人工智能 DataWorks 数据可视化
心动基于阿里云DataWorks构建游戏行业通用大数据模型
心动游戏在阿里云上构建云原生大数据平台,基于DataWorks构建行业通用大数据模型,如玩家、产品、SDK、事件、发行等,满足各种不同的分析型应用的要求,如AI场景、风控场景、数据分析场景等。
335 1
|
1月前
|
Ubuntu JavaScript 关系型数据库
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
在阿里云Ubuntu 20.04服务器上部署Ghost博客的步骤包括创建新用户、安装Nginx、MySQL和Node.js 18.x。首先,通过`adduser`命令创建非root用户,然后安装Nginx和MySQL。接着,设置Node.js环境,下载Nodesource GPG密钥并安装Node.js 18.x。之后,使用`npm`安装Ghost-CLI,创建Ghost安装目录并进行安装。配置过程中需提供博客URL、数据库连接信息等。最后,测试访问前台首页和后台管理页面。确保DNS设置正确,并根据提示完成Ghost博客的配置。
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
|
1月前
|
存储 分布式计算 网络协议
阿里云服务器内存型r7、r8a、r8y实例区别参考
在阿里云目前的活动中,属于内存型实例规格的云服务器有内存型r7、内存型r8a、内存型r8y这几个实例规格,相比于活动内的经济型e、通用算力型u1实例来说,这些实例规格等性能更强,与计算型和通用型相比,它的内存更大,因此这些内存型实例规格主要适用于数据库、中间件和数据分析与挖掘,Hadoop、Spark集群等场景,本文为大家介绍内存型r7、r8a、r8y实例区别及最新活动价格,以供参考。
阿里云服务器内存型r7、r8a、r8y实例区别参考