EMR Serverless Spark:一站式全托管湖仓分析利器

本文涉及的产品
EMR Serverless Spark 免费试用,1000 CU*H 有效期3个月
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 本文根据2024云栖大会阿里云 EMR 团队负责人李钰(绝顶) 演讲实录整理而成

数据平台技术演变

追溯数据处理软件及平台的演进历程,每一次大的架构升级与变迁都是由全球范围的新兴应用出现和落地触发的。具体来说,20世纪60-70年代数据库技术出现,数据库技术的普及和落地与个人计算机(PC)兴起的浪潮息息相关。直至21世纪初互联网应用爆发前,单机数据库技术在数据处理领域一直占据着统治地位。

进入21世纪,国外以Google的搜索引擎、Facebook的社交网络、Amazon的电子商务为标志,国内以百度、腾讯、阿里等为领军,标志着互联网应用开始大范围普及。互联网应用的普及,逐渐反映出传统单机数据库系统在处理能力与扩展性上存在的局限性难以支撑新兴业务的高速增长。Google在2003年发布了Google File System、2004年发布了MapReduce论文,标志着大数据技术时代的到来,引领了以Hadoop、HBase、Hive等为代表的开源大数据技术的兴起与发展。

随后,2007年iPhone的问世引领了智能手机时代的到来,推动移动互联网的兴起与应用多元化,进一步催生了计算引擎的发展。大约从2010年开始,以Apache Spark为代表的批处理引擎、以Apache Flink为代表的流处理引擎、以Presto为代表的OLAP分析引擎,逐渐成为数据处理领域的主流技术,满足了复杂多变的计算需求。

至2017年左右,随着直播与短视频等多媒体内容的爆发,数据形态趋向多模态,对数据处理框架的灵活性提出了更高要求。这一背景下,数据湖技术应运而生,旨在应对数据多样性带来的挑战。而2022年大语言模型的登场,揭开了人工智能应用时代的序幕,AI生成内容(AIGC)的飞速发展,不仅促使数据规模呈指数级增长,还进一步提升了非结构化、多模态数据的占比,对数据处理技术提出了全新的挑战与机遇。


面对这些新兴挑战,传统数据架构显得力不从心,亟需向更适应当前需求的方向演进。传统数据仓库具备高度结构化的特点,开箱即用,然而其高昂的存储成本、较低的数据开放性和灵活性成为了主要痛点。尤其是在需要多场景使用时,如同时支持离线和实时分析的情况下,必须通过数据同步来导入导出,进一步增加了复杂度。随着多媒体数据的增长以及对数据灵活性的要求越来越高,基于对象存储的数据湖架构应运而生,这类架构以其低成本存储和高灵活性著称,同时也采用了更加开放的数据格式。但是,它们在事务支持方面相对较弱,性能上也无法完全取代数据仓库。

鉴于上述情况,往往需要采用混合策略:将相对成熟且价值较高的数据业务应用在数据仓库中进行,而相对新兴对灵活性要求较高的数据业务应用则基于数据湖部署。这种混合策略虽然能够在一定程度上满足需求,但不可避免地带来了额外的数据一致性维护成本以及数据冗余问题,增加了系统的整体复杂性。在AI应用即将普及的新时代背景下,可以预见未来几年内应用领域的变化将会异常迅速,继续沿用旧模式将不再可行,因为这会导致极高的成本支出及难以应对的业务复杂度增长。

因此,我们认为,融合了数据湖与数据仓库优点的数据湖仓一体架构Lakehouse是发展的必然趋势。该架构在数据湖的基础上进一步优化,同时具备数据仓库的能力。具体而言,从架构层面看,数据湖仓可分为三层:

  • 底层是湖仓存储层:负责解决数据事务性、一致性与存储有效性。
  • 中间层是湖仓管理层:专注于结构化、半结构化和非结构化数据统一元数据管理,解决数据治理及安全问题。
  • 最上层是湖仓分析层:由多种计算引擎构成,其中Apache Spark是开源领域经过多年发展的明星项目。


在海外,Databricks已经提供了基于Spark构建的成熟的全托管产品,但在国内市场上仍缺乏相应的产品。为此,阿里云推出了EMR Serverless Spark,旨在填补这一空白,提供一个全面整合的数据湖仓解决方案。


EMR Serverless Spark 功能特性

接下来,我将介绍 EMR Serverless Spark 的主要功能与特性。正如前面提到的,在数据湖仓分析层,我们主要关注两个核心问题。首先,是业务易用性。所谓业务易用性,指的是能否通过一款湖仓分析产品,既能进行大数据处理,又能进行AI、数据科学处理。其次,性能也是一个至关重要的考量因素,在数据湖的基础上,其性能是否可以与传统数仓媲美。除易用性和性能之外,开放性也是不可忽视的一个因素。鉴于数据湖本身强调的是开放性和灵活性,因此EMR Serverless Spark设计时充分考虑了对开源Spark生态系统的全面兼容性。最后,云原生也是需要关注的因素。下面,我将从上述方面进一步展开。

一站式数据开发

首先,从平台能力角度来看,EMR Serverless Spark提供了作业开发、调试、发布、调度等一站式数据开发体验。无论是传统的ETL、交互式数据分析、或者基于Python的数据科学数据业务,都可以基于 EMR Serverless Spark 进行开发。开发之后可以进行版本管理和生产上线,生产上线后,EMR Serverless Spark内置工作流可以进行任务调度,并对任务和工作流进行有效监控,资源使用情况方面也会全面关注。


数据开发-内置SQL编辑器

在数据开发层面,EMR Serverless Spark 内置了一个SQL编辑器。支持用户编写 Interactive Query 和 ETL Query,并支持将不同类型的 Query 提交到不同的资源队列中运行,从而实现对计算资源的有效管理和分配。我们的资源管理体系提供了队列与会话两种形式,便于用户根据需求区分开发环境与生产环境中的工作负载。同时,SQL editor 还支持元数据视图。用户可以看到元数据库表情况,并对这些库表进行增删改查等操作。

数据分析 – Notebook 交互式环境

除了内置 SQL 编辑器之外,EMR Serverless Spark还提供了交互式的Notebook环境。在Notebook中,用户不仅能够编写和执行SQL语句,还能用Python 进行开发,并且可以根据需求灵活地安装各种Python库,例如Pandas。此外,我们还提供了一套完善的运行环境管理。用户可以通过Notebook界面轻松开发大数据AI一体化应用。

工作流调度

通过SQL编辑器或Notebook完成任务开发后,无论是单个SQL作业还是由多个脚本组成的Notebook作业,都可以通过EMR Serverless Spark 内置工作流进行调度。支持查看工作流运行情况,不同的工作流拓扑,还提供以拖拉拽方式便捷构建工作流的能力。

指标大盘

在工作流和任务调度启动后,EMR Serverless Spark支持通过指标大盘查看任务运行状态。提供 Spark 任务实例的 CPU、Memory、JVM、Driver scheduler、Executor – IO、Executor – Shuffle 等指标的可视化展示,还支持通过查看和分析作业CPU时、内存时等聚合性指标,识别性能瓶颈和异常情况,并进行优化和故障排查。

资源观测

此外,EMR Serverless Spark 提供完善的资源观测。用户可以根据部门或业务需求灵活地拆分资源队列。基于这些队列的资源使用情况,可以清晰地了解各个部门及业务线所占用的具体资源量。此外,针对不同队列之间的Quota限制,也支持动态调整。

监控诊断

最后,考虑到作业调优本身是一个相当复杂的过程,所以EMR Serverless Spark 还提供针对单个作业进行一键诊断的能力。能够智能化分析作业是否存在数据倾斜、垃圾回收等方面的异常,并基于诊断结果提供明确建议,以帮助用户更高效地优化作业。

极致性能 - 自研 Fusion 引擎

除了强大的平台能力,EMR Serverless Spark 还提供自主研发的企业级内核—Fusion Engine。这款引擎在两个方面做了极致的性能优化:

  • 面向CPU密集型业务:提供基于C++语言实现的 Native 向量化 SQL 引擎,充分利用SIMD指令集加速运算过程,显著降低CPU和内存开销。
  • 面向I/O密集型业务:基于我们贡献给Apache社区的开源Celeborn项目,我们内置了Remote Shuffle Service,支持多租户和资源隔离,同时提供极致弹性,实现I/O密集型业务加速。


根据TPC-DS基准测试结果表明,在10TB规模下,相较于Apache Spark,EMR Serverless Spark能够实现5倍左右的性能提升;而在更大规模(如100TB)的数据量上,相比TPCDS榜首暨 DataBricks 在2021年提交的成绩,EMR Serverless Spark 则实现了44%左右的性能增长,同时性价比提升3倍。由此可见,EMR Serverless Spark 自研 Fusion 引擎的极致性能

全方位生态兼容

最后值得一提的是,EMR Serverless Spark还具备全方位生态兼容性。它不仅可以无缝对接阿里云 DLF 2.0元数据管理系统和全托管存储解决方案,同时也支持与Hive Metastore等开源元数据管理系统集成,确保使用 HMS + OSS 进行元数据管理和数据存储的场景也能很好的支持。此外,在数据提交方面,EMR Serverless Spark也提供了多种接入方式,包括但不限于Livy Gateway、Thrift Server以及JDBC接口。针对工作流调度,EMR Serverless Spark 基于 OpenAPI 提供官方的 Airflow 和 DolphinScheduler Operator。最后还支持以 Spark_submit 命令提交任务,兼容开源提交方式。通过上述措施,EMR Serverless Spark 致力于打造一个全方位兼容Spark生态系统的数据湖仓分析平台,为广大用户提供更加便携高效的使用体验。

客户案例

接下来,我将向大家介绍两个已经在生产环境中使用 EMR Serverless Spark 的客户案例。

客户案例-美的

美的集团的数据湖仓架构完全基于 EMR Serverless Spark 构建。首先它利用Spark Streaming技术将工业设备数据源中数据流式写入到基于Hudi格式的数据湖仓当中。尽管我们在OpenLake框架内推荐使用Paimon作为首选湖格式,但 EMR Serverless Spark 产品全面支持包括Iceberg、Hudi及Delta Lake在内的多种流行湖存储方案。无论采用何种湖格式,均需进行Compaction 以提升查询效率。在此过程中,美的则充分利用了EMR Serverless Spark提供的资源来进行Compaction。此外,美的使用EMR Serverless Spark 进行数据清洗。从原始的ODS层,基于 EMR Serverless Spark 进行 ETL,然后生成明细数据,再结合业务特点对明细层的数据做进一步抽取,生成更高维的指标供业务使用。在AI应用场景下,美的同样依赖于 EMR Serverless Spark的强大支持。借助 EMR Serverless Spark Notebook能力,开发人员可以安装自定义Python库,结合自研算法,对数据进行聚合与分析。最终,无论是数仓链路产生的数据,还是AI相关的基础数据,都将被统一导出至StarRocks中,以便于企业内部进行 BI 报表分析。综上所述,美的基于 EMR Serverless Spark 进行一站式数据湖仓分析,促进了数字化转型进程中的效率提升与创新实践。

客户案例-鹰角网络

第二个案例是知名游戏公司上海鹰角网络科技,鹰角采用基于 EMR Serverless Spark 的开源兼容解决方案。首先,鹰角使用 Flink CDC 进行数据同步与入湖,采用的是Paion数据湖格式。完成数据入湖之后,整个数仓的数据处理链路则完全基于 EMR Serverless Spark进行数据清洗和提取。值得注意的是,在工作流调度方面,鹰角同时部署了Airflow与DolphinScheduler两种不同的调度框架。对于编码能力较强的数据工程师而言,Airflow 提供了更为灵活且强大的能力以支持构建高度定制化的工作流程;而针对编码能力相对较弱的数据分析师,则可以通过 DolphinScheduler 提供的图形化界面轻松创建并管理相对简单的作业调度计划。无论采用Airflow还是DolphinScheduler进行调度,通过 EMR Serverless Spark 提供的 Operator,都能够无缝接入 EMR Serverless Spark 服务,确保了资源利用效率的最大化以及运维成本的有效控制。鹰角同样选用 StarRocks 作为实时OLAP分析的核心组件;数据展示则是使用Superset。此外,EMR Serverless Spark 也支持海外服务,鹰角海外Region已经开始使用EMR Serverless Spark。

通过以上两个案例可以发现,无论是一站式湖仓分析或大规模离线计算,EMR Serverless Spark 在实际生产环境中都得到了很好的应用。



阿里云 EMR Serverless Spark 版已于2024年9月14日正式商业化售卖,欢迎体验!


如果您在使用 EMR Serverless Spark 版的过程中遇到任何疑问,可加入钉钉群(群号:58570004119)咨询。


为了助力 LakeHouse 架构在企业中的实践与落地,阿里云 EMR 技术团队联合 Apache Paimon 社区,联合举办“ Apache Spark & Paimon,助力 LakeHouse 架构生产落地”线下 Meetup,邀请阿里云、VIVO、美团等众多业内大咖分享 LakeHouse 架构的核心技术和最佳实践经验,为大数据从业者提供一个开放的分享与交流平台。打开链接或扫描二维码立即报名:https://x.sm.cn/4mJeCkB

公众号地产活动营销宣传公众号首图.jpg

目录
相关文章
|
6月前
|
SQL 分布式计算 Serverless
鹰角网络:EMR Serverless Spark 在《明日方舟》游戏业务的应用
鹰角网络为应对游戏业务高频活动带来的数据潮汐、资源弹性及稳定性需求,采用阿里云 EMR Serverless Spark 替代原有架构。迁移后实现研发效率提升,支持业务快速发展、计算效率提升,增强SLA保障,稳定性提升,降低运维成本,并支撑全球化数据架构部署。
553 56
鹰角网络:EMR Serverless Spark 在《明日方舟》游戏业务的应用
|
10天前
|
存储 自然语言处理 分布式计算
Apache Doris 3.1 正式发布:半结构化分析全面升级,湖仓一体能力再跃新高
Apache Doris 3.1 正式发布!全面升级半结构化分析,支持 VARIANT 稀疏列与模板化 Schema,提升湖仓一体能力,增强 Iceberg/Paimon 集成,优化存储引擎与查询性能,助力高效数据分析。
112 3
Apache Doris 3.1 正式发布:半结构化分析全面升级,湖仓一体能力再跃新高
|
DataWorks 数据挖掘 Serverless
阿里云EMR Serverless StarRocks 内容合集
阿里云 EMR StarRocks 提供存算分离架构,支持实时湖仓分析,适用于多种 OLAP 场景。结合 Paimon 与 Flink,助力企业高效处理海量数据,广泛应用于游戏、教育、生活服务等领域,显著提升数据分析效率与业务响应速度。
149 0
|
3月前
|
SQL DataWorks 关系型数据库
DataWorks+Hologres:打造企业级实时数仓与高效OLAP分析平台
本方案基于阿里云DataWorks与实时数仓Hologres,实现数据库RDS数据实时同步至Hologres,并通过Hologres高性能OLAP分析能力,完成一站式实时数据分析。DataWorks提供全链路数据集成与治理,Hologres支持实时写入与极速查询,二者深度融合构建离在线一体化数仓,助力企业加速数字化升级。
|
6月前
|
存储 运维 Serverless
千万级数据秒级响应!碧桂园基于 EMR Serverless StarRocks 升级存算分离架构实践
碧桂园服务通过引入 EMR Serverless StarRocks 存算分离架构,解决了海量数据处理中的资源利用率低、并发能力不足等问题,显著降低了硬件和运维成本。实时查询性能提升8倍,查询出错率减少30倍,集群数据 SLA 达99.99%。此次技术升级不仅优化了用户体验,还结合AI打造了“一看”和“—问”智能场景助力精准决策与风险预测。
537 69
|
5月前
|
存储 缓存 分布式计算
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
本文将深入探讨基于 StarRocks 和 Iceberg 构建的云原生湖仓分析技术,详细解析两者结合如何实现高效的查询性能优化。内容涵盖 StarRocks Lakehouse 架构、与 Iceberg 的性能协同、最佳实践应用以及未来的发展规划,为您提供全面的技术解读。 作者:杨关锁,北京镜舟科技研发工程师
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
|
4月前
|
人工智能 分布式计算 DataWorks
一体系数据平台的进化:基于阿里云 EMR Serverless Spark 的持续演进
本文介绍了一体系汽配供应链平台如何借助阿里云EMR Serverless Spark实现从传统Hadoop平台向云原生架构的迁移。通过融合高质量零部件供应与创新互联网科技,一体系利用EMR Serverless Spark和DataWorks构建高效数据分析体系,解决大规模数据处理瓶颈。方案涵盖实时数据集成、Lakehouse搭建、数仓分层设计及BI/ML应用支持,显著提升数据处理性能与业务响应速度,降低运维成本,为数字化转型奠定基础。最终实现研发效率提升、运维压力减轻,并推动AI技术深度整合,迈向智能化云原生数据平台。
151 4
|
6月前
|
存储 分布式计算 OLAP
百观科技基于阿里云 EMR 的数据湖实践分享
百观科技为应对海量复杂数据处理的算力与成本挑战,基于阿里云 EMR 构建数据湖。EMR 依托高可用的 OSS 存储、开箱即用的 Hadoop/Spark/Iceberg 等开源技术生态及弹性调度,实现数据接入、清洗、聚合与分析全流程。通过 DLF 与 Iceberg 的优化、阶梯式弹性调度(资源利用率提升至70%)及倚天 ARM 机型搭配 EMR Trino 方案,兼顾性能与成本,支撑数据分析需求,降低算力成本。
401 59
|
8月前
|
存储 分布式计算 物联网
美的楼宇科技基于阿里云 EMR Serverless Spark 构建 LakeHouse 湖仓数据平台
美的楼宇科技基于阿里云 EMR Serverless Spark 建设 IoT 数据平台,实现了数据与 AI 技术的有效融合,解决了美的楼宇科技设备数据量庞大且持续增长、数据半结构化、数据价值缺乏深度挖掘的痛点问题。并结合 EMR Serverless StarRocks 搭建了 Lakehouse 平台,最终实现不同场景下整体性能提升50%以上,同时综合成本下降30%。
616 58