阿里云 EMR StarRocks VS 开源版本功能差异介绍

本文涉及的产品
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 阿里云 E-MapReduce Serverless StarRocks 版是阿里云提供的 Serverless StarRocks 全托管服务,提供高性能、全场景、极速统一的数据分析体验,具备开箱即用、弹性扩展、监控管理、慢 SQL 诊断分析等全生命周期能力。内核 100% 兼容 StarRocks,性能比传统 OLAP 引擎提升 3-5 倍,助力企业高效构建大数据应用。本篇文章重点介绍阿里云 EMR StarRocks 与开源 StarRocks 的对比与客户案例。

内容导读 :


主题:EMR StarRocks 线上公开课第2期 - EMR Serverless StarRocks VS 开源版本功能差异介绍

讲师:弘锐,阿里云 E-MapReduce 产品专家


内容框架:

  • EMR Serverless StarRocks VS 开源版本能力对比
  • EMR Serverless StarRocks 客户案例分享


直播回放链接:

https://developer.aliyun.com/live/254040



阿里云 E-MapReduce Serverless StarRocks 版是阿里云提供的 Serverless StarRocks 全托管服务,提供高性能、全场景、极速统一的数据分析体验,具备开箱即用、弹性扩展、监控管理、慢 SQL 诊断分析等全生命周期能力。内核 100% 兼容 StarRocks,性能比传统 OLAP 引擎提升 3-5 倍,助力企业高效构建大数据应用。本篇文章重点介绍阿里云 EMR StarRocks 与开源 StarRocks 的对比与客户案例。


一、开源对比

阿里云 EMR StarRocks 与社区版本功能对比分为三个部分,首先是 StarRocks 内核及架构的差异;其次是在实例运维管理能力上的差异;接下来一部分就是关于数据的运维,也就是对 StarRocks 内部的数据应该如何管理的问题。通过阿里云 EMR StarRocks Manager,大家可以做很多与数据运维或业务运维相关的事情。

幻灯片4.PNG


内核及架构对比

首先第一部分就是关于 StarRocks 内核的对比,阿里云 EMR 团队与 StarRocks 社区已经合作很长时间了,所以基本上会贡献给社区。但是如果是周边产品的集成或新加的一些功能还是暂时会放到 EMR StarRocks 商业化的板块中进行管理。一些商业化能力经过一些时间差也会逐步合并到社区版本中。

当前内核部分,第一个不同就是高 QPS 点查,在上万级别的 QPS 场景中,EMR Serverless StarRocks 做了一系列优化,能够保证高 QPS 下的性能的稳定性。接下来是现代物化视图,对于这个部分,EMR Serverless StarRocks 添加了物化改写的能力,用户去查询物化视图的时候,如果基表更新了,但是物化视图还没有更新的情况下,就能够快速去查询到实时更新的那部分数据,而用户的业务 SQL 是不需要改写的。还有一部分就是存算分离,存算分离主要是指数据湖当中的存算分离版本,在数据湖存算分离的版本下,EMR Serverless StarRocks 对数据湖部分做了大量优化,性能提升也极为明显,约为20%~30%,极端情况下能到70%,以上也是内核目前存在的比较大的差异点。


其次是数据湖的部分,在这一部分 StarRocks 重点结合 Paimon 做了大量的改造,包括集团内部也在进行业务试点的尝试,构建弹内的 StarRocks 加 Paimon 的数据湖场景。这部分的性能差异用户也能在 StarRocks 使用到最新的版本,最新版本中性能和功能都会较为完善。还有一部分就是和阿里云实时计算合作,加入了整库整表同步的功能,用户可以通过 Flink VVP 进行试用,也可以使用 Dataworks + StarRocks 进行实时写入和批量写入,同样也能实现整库整表同步更新。这一部分的功能也是和开源版本存在差异,因为它需要借助阿里云上的其他产品的能力去实现实时的写入,例如将 MySQL 的数据实时地导入到 StarRocks 当中,实现整库迁移。对于实现这样的效果,StarRocks 也将这一部分功能进行了集成。

以上就是目前在内核部分的大部分差异,基本上和社区在内核层面保持一致,但会增加一些功能帮助用户提升查询性能,或提升并发度和优化用户体验。


实例运维管理

在实例运维层面,如上图所示,在开源版本当中没有可视化的管理平台,在 EMR StarRocks 当中则有一整套的在线扩缩容、部署、集群运维管理系统。包括监控报警功能都是现成的。用户只需要使用开了 EMR StarRocks 的账号进行登录,即开即用。在 Serverless 版本中会有故障自动恢复,以及相应的一些自动恢复机制,保障各种节点自动恢复,不需要用户过多关注底层的机器资源故障或问题。以上也是 EMR Serverless StarRocks 免运维的部分,即集群的自动恢复能力方面,不需要用户使用过多人力进行机器运维。


另外一部分差异就在于弹性方面,目前用户对于弹性的需求较为明显,无论是 StarRocks 做数据湖分析,还是在传统的 StarRocks OLAP 报表分析场景当中,用户都会经常遇到偶发的波峰,而在夜晚耗费的资源就会比较少,有了弹性的能力就可以帮助用户更好的节省计算成本,具体发布见官方发布的公告,预计在6月初推出 CN 节点的弹性。当用户的业务有明显的波峰和波谷时,用户可以结合弹性更好地节省计算成本。


接下来就是小版本的自动升级,众所周知,StarRocks 迭代较快,非常活跃。用户经常面临的问题就是如何从2.5.8升级到2.5.10,类似于以上的小版本升级。如果是自建的话,就需要自己手动做维护。在 EMR Serverless StarRocks 当中,就能够通过一键按钮,自动的进行小版本滚动升级,这也是 EMR Serverless StarRocks 较为受欢迎的点,因为 StarRocks 更新确实较为频繁。


另外还有一个在计划之中的特点就是 Multi WareHouse,开源版本目前并不会有 Multi WareHouse,但大概在7月底,平台会基于 Serverless StarRocks 3.3版本推出 Multi WareHouse 能力, 帮助用户更方便地进行业务隔离。较为典型的场景就是有时需要将导入任务和查询任务分开,让他们分别使用不同的计算资源,以免由于导入任务忽然很大,导致 SQL 无法查询,或一个 SQL 查的很大,导致导入任务无法写入,以上是用户在使用 Serverless StarRocks 集群时经常会碰到的问题。


接下来是 Cluster Linking,在进行集群迁移或备份到新的集群的场景当中可以借助 Cluster Linking 工具。目前, Cluster Linking 还只是一个工具并没有完全产品化,因为基本上已经能够满足大部分场景。


以上就是关于 EMR StarRocks 与开源版本在集群或实例方面的能力差异。


StarRocks Manager

幻灯片5.PNG

在 StarRocks  Manager 中提供了很多功能,提供 SQL Editor,用户在写 SQL,或是日常进行命令行操作时都可以使用 SQL Editor 工具,只需要在页面上连接实例,就能够打开 SQL Editor 进行相应的 SQL 操作或者查询。在线 SQL Editor 的主要优势就是方便用户进行在线查询或开发调试。

此外,Manager 层还提供了可视化数据库或数据表管理的功能,可以查看数据库或数据表,包括表的分区或其他相关信息,以上是源数据可视化的查看和管理的能力。

Manager 层还提供集群的实例健康报告,用户可以直接在控制台集群上查看健康报告。健康报告当中会帮助用户统一分析 SQL、导入任务、抓取源数据等等,健康报告会显示使用较多、使用资源较大、查询较为耗时的 SQL 语句;在导入任务方面同样也会分析导入任务占用资源较多的进程;在抓取源数据方面会给出小文件分布较多的表或分区的数据的位置,以上就是平台结合整个集群实例会给予用户的健康报告内容,以帮助用户做集群治理或业务层面的数据治理。


在慢 SQL 方面,EMR Serverless StarRocks 同样也提供相应的归因分析。在用户日常使用当中,会出现某个 SQL 运行得很慢的情况,用户不知道为什么运行得很慢,Serverless StarRocks 就会提供一套慢 SQL 的可视化信息分析,用户可以看到每个 SQL 的使用情况,包括运行慢的原因,需要如何解决等。以上所提内容会在 EMR Serverless StarRocks 最新的版本当中迭代支持。

在导入任务方面,无论是实时导入还是批量导入,或是其他各种导入任务的日常管理,也是 Serverless StarRocks 的痛点,平台会提供相应导入任务的相关管理界面,用户可以实时看到有什么任务在运行、任务故障的日志信息、错因、进度信息等。


安全及权限

接下来是权限可视化方面,EMR Serverless StarRocks 提供了基础的可视化权限配置,当然用户也可以直接通过命令行进行权限管理。


目前,可视化物化管理部分、血缘分析已经在设计中,在 Serverless StarRocks 3.x之后的湖仓新范式的概念中,用户会越来越多的把许多数据处理或数据加工的任务放到 Serverless StarRocks 当中,则会面临一个问题就是血源关系是什么样的?以及倘若任务出现故障,影响故障的上下游是哪些?以上均是 StarRocks 3.x 之后的湖仓新范式的概念中用户应用到具体场景中会出现的问题,这两部分就是物化视图和血缘,预计在六到七月份做版本发布。


还有一部分是与 Cache 相关的,用户在使用 Serverless StarRocks3.x 版本之后,会进行到存算分离的架构当中,在这套架构当中用户会面临的问题是开始在哪里?有没有命中?哪些表命中了?哪些表没命中?哪些 SQL 命中了?哪些 SQL 没有命中?对于以上情况,平台都会提供 Cache 相关的一整套 Manager 能力,这套 Manager 能力主要就是解决在缓存当中会碰到的一系列问题。用户可以看到 SQL 中缓存的命中情况、命中的比例。对于数据表和数据库,用户也能够看到数据库或数据表缓存的数据量有多大,包括在健康报告当中也会给出缓存相关的分析信息,例如会给出哪些表使用较多需要进行缓存?或者哪些缓存现在是该命中的情况下没有命中,可能需要进行优化。以上内容也会在健康报告当中结合缓存的分析报告,给出用户相应的治理建议。内容对于存算分离场景下的缓存也是较为重要的,如果要把存算分离的架构用到最优,对缓存的管理就是第一步。


售后及支持

售后服务方面,如果是社区,用户则需要依赖于社区的版本支持;如果是 EMR Serverless StarRocks,就可以通过支持群或联系技术专家进行售前阶段及售后阶段的咨询,帮助用户尽快将业务落实到 Serverless StarRocks 上。如果在使用过程当中出现问题也可以寻找技术专家进行支持。


以上内容就是 EMR Serverless StarRocks 和社区版本的能力差异,也是 EMR Serverless StarRocks 产品希望能够帮助用户解决到的问题。用户在选型时可以进行综合评估,同时也能加入钉群进行反馈。

 

二、客户案例

以下为 EMR Serverless StarRocks 典型客户案例,可供参考。


案例一:某在线教育客户- BI自助/指标平台/多维分析/

幻灯片7.PNG

首先是某在线教育客户,致力于做传统的 BI 报表、对内的运营分析报表、指标平台等业务系统的数据。这部分数据当中有 T+1 的,也有实时写入的。该用户要求指标能够灵活定义,各个维度之间能任意组合。该用户原先使用的解决方案,有 Presto/MySQL 方案,也有较为传统的 Hive、Spark,但基本上性能较差。EMR Serverless StarRocks 和 Spark 对比,性能有几倍的提升,该用户期望有更高性能的报表分析综合平台,就选择了 EMR Serverless StarRocks 路线。


其次,EMR Serverless StarRocks 支持 upsert 场景,传统平台和 Spark 不支持 upsert 场景, 当然目前结合一些湖格式用户也能够完成,但整体的弹性性能不如直接使用 EMR Serverless StarRocks 进行查询。如上图所示,该用户的整个数据架构就是将原始的数据、Binlog、日志实时地通过Kafka、Flink 进行处理之后,实时写入到 Serverless StarRocks。以上是实时数据的链路,还有一部分数据量较大的数据使用离线的方式,通过小时级使用 Hive 加工之后,然后通过 BulkLoad 的形式上传到 Serverless StarRocks 当中,完成之后就在 Serverless StarRocks 内部形成了一整套的对业务相关的表的集合。基于这个集合就可以做上游的多维报表分析、自助 BI 报表平台或指标平台。以上功能基于 Serverless StarRocks 都会对该用户提供较大的性能提升,此外,相应的技术栈也会相对简单。在 OLAP 场景下将所有数据都交给 Serverless StarRocks 即可,以上就是某在线教育客户的场景,其实也是 Serverless StarRocks 最擅长的场景,即传统的 OLAP 报表分析。

案例二:某在线教育客户-实时事件分析

幻灯片8.PNG

该案例的在线教育客户主要进行实时事件分析,即实时地将一些数据通过 Flink 直接写到 Serverless StarRocks 做事件分析。对于实时事件分析的场景,在之前用户会使用 Druid 方案当中一些相对较为复杂的结构,查询性能和 SQL 语法支持方面相对于 Serverless StarRocks 来说较弱。所以最后用户整体上使用了 Serverless StarRocks,用 Serverless StarRocks 替代了实时写入、实时查询、简单的域聚合等,在将所有东西嵌入到 Serverless StarRocks 之后,整体的查询性能有两倍以上的提升,SQL 的查询语法也是 Serverless StarRocks 所支持的,所以他的 SQL 灵活度也较高,可以随意使用一些组合,对用户实时写入、实时进行事件分析的场景较为适用。在日常生活当中能够见到的一些大屏也是实时写入的案例,同样使用的也是 Flink 加 Serverless StarRocks 的组合,对于类似的场景,使用这套组合也是极其稳定和保险的,同时也是 Serverless StarRocks 所擅长的核心场景。


案例三:某金融公司-OLAP 组件统一提速

幻灯片9.PNG

本案例中该用户的初衷是对 OLAP 组件统一提速,这也和 EMR Serverless StarRocks 所宣传的概念一致。该客户是一个金融公司,对于金融公司来说可能会有较多的 OLAP 组件,就会存在相应隐患。较多的 OLAP 组件对于公司来说第一个缺点是运维较为复杂,第二个缺点就是存在大量实例,会消耗极大一部分的硬件资源成本,在某些场景当中并发会受限,慢 SQL 运行的也会比较慢,以上内容都是该用户所面临的痛点,总结起来就是组件过多难以维护,需要部署的集群过多成本较高。


最后该公司决定将整个 OLAP 相关的明细或数据等所有业务数据都关联到 EMR Serverless StarRocks 当中,通过 Serverless StarRocks 做统一的 OLAP 组件,在此操作之下对该用户的业务性能查询提升也是较为明显的,整体提升40%左右,资源使用率降低达到50%,主要在于 Tidb 方面节省的成本。在进行简单的数据处理加工时,进行预聚合的时间原来需要三十分钟,现在只需要三十秒,所达到的提升有原来的几十倍。所以对该用户来说,性能也提升了,成本也降低了,原来的预聚合场景的性能提升也非常快,所以消耗的资源也就变少了。


此案例也有越来越多的客户在选型时进行参考,尤其是在选择新业务的时候,基本上就会选择 Serverless StarRocks。对于用户来说,节省了成本,在后期的技术当中也能做得更为统一。本案例中的客户还希望实现对用户行为进行分析、监控、报警、用户画像的功能,该用户也就是期望所有 OLAP 相关的能力都可以由 Serverless StarRocks 统一管理和维护。

案例四:某游戏公司-广告投放

幻灯片10.PNG

该用户是一个偏具体的场景,从技术角度来看,有两个数据量较大的表,数据写入频率也较高。在需要多表、专业的性能要求较高、写入的性能要求较高的场景下,就比较适用于 Serverless StarRocks,对用户来说,将这部分数据切到了 Serverless StarRocks,提升了整个数据链路的实时性,提升了整体的查询性能,业务使用查询性能提升也较为明显,成本也相对较低。

以上就是 EMR Serverless StarRocks 部分案例场景。

目前也存在一种现象,越来越多的用户会直接将相应的数据放到 Serverless StarRocks 进行建仓,进行存算分离的用户也越来越多,或使用 Serverless StarRocks 去构建一整套的小型数仓场景,即直接使用湖仓新范式直接去落地。





产品导航



EMR Serverless StarRocks钉钉交流群(群号:24010016636)



相关实践学习
基于EMR Serverless StarRocks一键玩转世界杯
基于StarRocks构建极速统一OLAP平台
快速掌握阿里云 E-MapReduce
E-MapReduce 是构建于阿里云 ECS 弹性虚拟机之上,利用开源大数据生态系统,包括 Hadoop、Spark、HBase,为用户提供集群、作业、数据等管理的一站式大数据处理分析服务。 本课程主要介绍阿里云 E-MapReduce 的使用方法。
目录
相关文章
|
4天前
|
SQL 分布式计算 Serverless
阿里云 EMR Serverless Spark 版正式开启商业化
阿里云 EMR Serverless Spark 版正式开启商业化,内置 Fusion Engine,100% 兼容开源 Spark 编程接口,相比于开源 Spark 性能提升300%;提供 Notebook 及 SQL 开发、调试、发布、调度、监控诊断等一站式数据开发体验!
34 3
阿里云 EMR Serverless Spark 版正式开启商业化
|
25天前
|
SQL 存储 NoSQL
阿里云 EMR StarRocks 在七猫的应用和实践
本文整理自七猫资深大数据架构师蒋乾老师在 《阿里云 x StarRocks:极速湖仓第二季—上海站》的分享。
140 2
|
1月前
|
安全 数据管理 大数据
数据湖的未来已来:EMR DeltaLake携手阿里云DLF,重塑企业级数据处理格局
【8月更文挑战第26天】在大数据处理领域,阿里云EMR与DeltaLake的集成增强了数据处理能力。进一步结合阿里云DLF服务,实现了数据湖的一站式管理,自动化处理元数据及权限控制,简化管理流程。集成后的方案提升了数据安全性、可靠性和性能优化水平,让用户更专注业务价值。这一集成标志着数据湖技术向着自动化、安全和高效的未来迈出重要一步。
45 2
|
29天前
|
SQL 大数据 数据管理
EMR Serverless StarRocks体验测评
【8月更文挑战第14天】EMR Serverless StarRocks体验测评
39 0
|
1月前
|
分布式计算 大数据 MaxCompute
EMR Remote Shuffle Service实践问题之阿里云RSS的开源计划内容如何解决
EMR Remote Shuffle Service实践问题之阿里云RSS的开源计划内容如何解决
|
1月前
|
分布式计算 测试技术 调度
EMR Remote Shuffle Service实践问题之集群中落地阿里云RSS如何解决
EMR Remote Shuffle Service实践问题之集群中落地阿里云RSS如何解决
|
1月前
|
存储 分布式计算 大数据
大数据革新在即,阿里云EMR如何布局DeltaLake引领行业潮流?
【8月更文挑战第26天】大数据时代,实时处理与分析能力对企业至关重要。Delta Lake 作为高性能、可靠且支持 ACID 事务的开源存储层,已成为业界焦点。阿里云 EMR 深度布局 Delta Lake,计划深化集成、强化数据安全、优化实时性能,并加强生态建设与社区贡献。通过与 Spark 的无缝对接及持续的技术创新,阿里云 EMR 致力于提供更高效、安全的数据湖解决方案,引领大数据处理领域的发展新方向。
33 3
|
1月前
|
存储 分布式计算 监控
揭秘阿里云EMR:如何巧妙降低你的数据湖成本,让大数据不再昂贵?
【8月更文挑战第26天】阿里云EMR是一种高效的大数据处理服务,助力企业优化数据湖的成本效益。它提供弹性计算资源,支持根据需求调整规模;兼容并优化了Hadoop、Spark等开源工具,提升性能同时降低资源消耗。借助DataWorks及Data Lake Formation等工具,EMR简化了数据湖构建与管理流程,实现了数据的统一化治理。此外,EMR还支持OSS、Table Store等多种存储选项,并配备监控优化工具,确保数据处理流程高效稳定。通过这些措施,EMR帮助企业显著降低了数据处理和存储成本。
45 3
|
1月前
|
存储 分布式计算 大数据
阿里云 EMR 强势助力,与阿里云大数据体系共创辉煌,把握时代热点,开启生态建设之旅
【8月更文挑战第26天】阿里云EMR(Elastic MapReduce)是一种大数据处理服务,与阿里云的多个服务紧密结合,共同构建了完善的大数据生态系统。EMR与对象存储服务(OSS)集成,利用OSS提供可靠、低成本且可扩展的数据存储;与MaxCompute集成,实现深度数据分析和挖掘;还支持数据湖构建服务,加速数据湖的搭建并简化数据管理与分析过程。EMR提供多种编程接口及工具,如Hive、Spark和Flink等,帮助用户高效完成大数据处理任务。
29 2
|
1月前
|
存储 机器学习/深度学习 弹性计算
阿里云EMR数据湖文件系统问题之OSS-HDFS全托管服务的问题如何解决
阿里云EMR数据湖文件系统问题之OSS-HDFS全托管服务的问题如何解决