和封神一起“深挖”Spark

本文涉及的产品
对象存储 OSS,OSS 加速器 50 GB 1个月
简介: 2016云栖大会·北京峰会于8月9号在国家会议中心拉开帷幕,在云栖社区开发者技术专场中,来自阿里云技术专家曹龙(封神)为在场的听众带来《Deep dive into Spark》精彩分享。 关于分享者 曹龙,花名封神,专注在大数据领域,6年分布式引擎研发经验。先后研发上万台Hadoop、ODPS

2016云栖大会·北京峰会于89号在国家会议中心拉开帷幕,在云栖社区开发者技术专场中,来自阿里云技术专家曹龙(封神)为在场的听众带来《Deep dive into Spark》精彩分享。

关于分享者

曹龙,花名封神,专注在大数据领域,6年分布式引擎研发经验。先后研发上万台Hadoop、ODPS集群。先后负责阿里YARN、Spark及自主研发内存计算引擎。目前为广大公共云用户提供专业的Hadoop服务,即:E-mapreduce产品

演讲内容架构

  • 数据处理技术介绍
  • Spark 介绍
  • Spark Plus
  • Spark 应用场景
  • Spark 在云上
  • Spark 常见的问题
  • E-MapReduce大数据平台

演讲主要内容

大数据通常自上而下分为大数据产品、数据治理/作业生命周期、作业管理/作业流、分布式计算、分布式存储、分布式调度、硬件/机房七层。本次演讲的重点在于分布式计算层。

f3970574979966a58844b39d8df0c81e92bcadfc

在以时间、数据量的坐标抽上列出目前引擎大致擅长处理数据的坐标,应该还需要加上数据复杂度、成本等维度,才能更好的体现侧重点,这里不列出。没有哪个软件能解决所有的问题,能解决问题也是在一个范围内,即使是spark、flink等。目前存在有意思的事情是:greenplum类似的MPP引擎想处理大数据的需求,hadoop等被定位为大数据的引擎也想解决小数据的问题(列式存储、或者也加入一些索引)。图中右上角的想往左边靠,减少延迟,图中左下角的想往上面靠,增大能处理的数据量。

ad120b34cebcf8e2a976fa1b0c8d58c37d070b6f

DB/MPP跟Hadoop引擎相对比,两者有很大的不同,具体差异参见下图。从硬件、容错、调度模型及衡量标准方面各自都侧重一方面,对于事务性、index等,Hadoop引擎当前是不支持的。另外MPP其实也在跟Hadoop在融合,比如MPP on HDFS,Spark on DB也在实现。

4cbdec4f9990068999fe79400f7619e906fb262b

Hadoop生态计算引擎目前包括:Hadoop MapReduce、Spark/Spark 2.0、TEZ、Flink等,这里从计算模型,各自的特点分为了1G、2G、3G、3.8G、4G,分别代表其理论先进程度。Spark理论上并不是最先进的,但是目前来讲应该是最适合的。

3d709bdca3380c309968811e984fdb6aafb3044d

Spark 介绍

下图展示的是Spark的趋势,可以清楚地看到,在2012年至2013年间,Spark有了一个很大的转折,在那时候,阿里也在逐步使用Spark,到今天,Spark和Hadoop逐渐持平发展。

a518db35b2c2e5e7c050b2d377588799170ac9da

Spark 提供 SQL、机器学习库 MLlib、流计算 Streaming 和图计算 Graphx,同时也支持 Scala、Java、Python 和 R 语言开发的基于 API 的应用程序。下图显示的是Spark 1.0的基础架构。

68c234062f7d39f97646f2155fd48d675853359a

下图是Spark 2.0的基础架构,对比于1.0,Spark 2.0主要聚焦于两个方面:(1)对标准的SQL支持。(2)统一的DataFrame和Dataset(逻辑执行计划)API。特别的以后一些的API都是基于Catalyst的。

eb3c410cce367c9173b647cae007a3041a4808e0

完整的Spark链路如下图所示,主要包括SQL、RDD、Task、Thread。

59e453a4e088e474e89b5ed06ea85259226bdb01


Spark Plus

常见的Spark puls有:Spark部署模式、Spark弹性伸缩、Spark+aliuxio(加速)、与业务系统融合(解耦,业务系统与大数据系统)、Spark+数据库服务、Spark+存储格式。

其中弹性伸缩让Spark上大集群成为了可能;在Spark+存储格式中:1 TB数据的存储相对比文本节省了将近 75%;性能按照不同的query提高从几倍到数十倍不等。

90281433cdc3da77eb2915e1ee6759ae9c71ab57

常见的Spark应用场景包括:ETL、机器学习、流式计算、即时查询。

080ffc6ccd184aa2db23cbfa9dece65682171d9c

其中,在ETL场景中,通过Spark SQL 、Spark API、Dataset实现图片、语音、视频等信息的在线/离线数据抽取、转化为结构化数据,便于后续分析处理。

0ffda9a77c58932e4a0ef771e5b8598652a9f938

Spark 在云上

Spark在云上的最佳实践是将存储与计算分离,下图展现了自建ECS和EMP+OSS的存储计算分离成本估算对比情况。

e414db0ec9eeceb18626daec885ed1c74ce7fe07

下图展示的是自建ECS和EMP+OSS的terasort时间对比,这里自建ECS配置参数是1 master 4cpu 16g和8 Slave 4cpu 16g;EMR+OSS的参数是1 master 4cpu 16g和8 Slave 4cpu 16g。

6cce621b536a112085418a07ff44551034079977

下图展现了自建ECS和EMP+OSS的存储计算分离性能对照图,左边是ECS自建,右边是EMP+OSS。

282ad77b9ffb671e2369fc6cc8350908f82686d6 

Spark常见的问题包括卡住、内存溢出、GC频繁。


3408cc14de9787220b17180e7fd4790ac68c3fd7 

随着Spark 2.0的发布,Spark逐渐趋于成熟,未来Spark的发展方向:

  • 支持ANSI SQL
  • 性能接近MPP数据仓库
  • 一切基于优化(Catalyst)
  • 新硬件的支持,比如:大内存、GPU
  • 更加友好的支持云

 76d1c3c28e69e6b8d2580183935c54334ad1383e 

E-MapReduce大数据平台

E-MapReduce 是运行在阿里云平台上的开源大数据处理系统解决方案。它能够让用户将Apache Hadoop和Apache Spark等开源引擎运行在阿里云的云平台上,提供给用户在云上的分析和处理大数据的平台。我们提供管控系统、运维系统及后续的专家系统帮用户解决自动化的问题,并提供专家服务帮助客户解决疑难杂症。

87bc6930926e2337a84e2927dc175ec989af306e 

E-MapReduce产品的架构如下图所示:

 271c57b4f9628af67bfc41771fa6db5a7f414ff4 

从上图可以看出,Spark生态是E-MapReduce引擎的一部分,我们还有支持了其它非常多的引擎,如在离线处理、在线流式、在线存储及交互式查询等各个方面。基于我们过去许多年在阿里内部的沉淀,在易用性、成本、性能、运维等各方面具有阿里开源大数据的技术能力,欢迎大家使用。

相关实践学习
使用操作系统智能助手OS Copilot解锁操作系统运维与编程
在本实验场景中,将在阿里云ECS上体验OS Copilot产品。OS Copilot是阿里云操作系统团队基于大模型构建的OS智能助手。它具有自然语言问答、辅助命令执行、系统运维调优等功能,帮助用户更好地使用Linux,提升阿里云的使用体验。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
Java Spring 容器
【Spring AOP底层实现原理】
【Spring AOP底层实现原理】
528 0
|
存储 监控 Java
使用Java构建实时监控与警报系统
使用Java构建实时监控与警报系统
|
机器学习/深度学习 人工智能 Linux
anaconda conda 切换为国内源 、windows 和 Linux配置方法、 添加清华源——【一文读懂】
请问为什么我使用 Conda 搭建一个深度学习环境半个多小时都没成,而你10分钟就随手搭建一个环境; 讲道理,这就像搬砖,搬的久了,还不能允许我一天多拉几车吗
6915 0
anaconda conda 切换为国内源 、windows 和 Linux配置方法、 添加清华源——【一文读懂】
|
存储 SQL Cloud Native
离在线一体化云原生数仓发展思考
OLAP是一个很卷的赛道,创业公司也众多。基于笔者10+年的大数据与数据仓库的工作经验,就目前的数据仓库主流趋势:离在线一体化、引擎一体化、云原生化等写一些思考,抛砖引玉。
808 154
|
Cloud Native Serverless 测试技术
祝贺!我的同事丁宇获“2023 年度云原生产业领军人物”荣誉称号
祝贺!我的同事丁宇获“2023 年度云原生产业领军人物”荣誉称号
1499 113
|
存储 SQL 缓存
读书笔记《数据密集型应用系统设计》- 数据存储与检索
《数据密集型应用系统设计》是一本很好的介绍数据密集类系统设计原理的纲要性书籍,笔者再次阅读下,记录一些读书笔记,也写一些自己的思考穿插其中,以做备忘。
644 154
|
存储 监控 大数据
HBase全网最佳学习资料汇总
HBase这几年在国内使用的越来越广泛,在一定规模的企业中几乎是必备存储引擎,互联网企业阿里巴巴、百度、腾讯、京东、小米都有数千台的HBase集群,中国电信的话单、中国人寿的保单都是存储在HBase中。
27978 99
|
文字识别 数据库
企业工商三四要素验证的区别和使用场景
企业工商验证可以一定程度规避商务合作的风险,防范空壳公司,同时也有助于企业的日常运营管理,杜绝冒名注册、羊毛党攻击等恶意行为,减少运营成本提高成交转化率,可以在一定程度上提升企业抵御被骗风险的能力。
1566 0
企业工商三四要素验证的区别和使用场景
|
SQL 存储 机器学习/深度学习
流批一体架构在快手的实践和思考
快手技术专家、Apache Flink & Apache Calcite Committer 张静,在 FFA 流批一体专场的分享。
流批一体架构在快手的实践和思考
|
存储 分布式计算 大数据
5W1H(六何分析法)全景洞察大数据
我们从大数据的特征说起,谈到了大数据的价值,再聊什么时候做,谁去做,选择什么平台,最后聊到了怎么做的问题。通过对一些真实的场景分析,了解了大数据的全貌。
11659 58