暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

实测结果公开:用户见证 StarRocks 存算分离优异性能!

StarRocks 2023-07-15
488

StarRocks 在 3.0 版本正式引入了存算分离架构,从 shared-nothing 走向 shared-data,实现了架构上的重大升级。这一升级受到许多用户的高度期待,因为它不仅是企业降本增效的关键,也是 StarRocks 迈向云原生的必经之路。因此,在 StarRocks 3.0 版本发布初期,StarRocks 号召了社区用户响应存算分离的测试活动,以便用户通过实际测试来反映最真实的使用体验和性能。

在用户测试报告中,StarRocks 存算分离在数据导入性能、查询性能都与存算一体达到了一致;在冷数据查询的场景的性能也只有 50% 左右的性能下降。此外,在查询性能扩展能力上,我们通过测试报告可以看到随着计算节点的增加,查询性能会接近线性增长。

以下是此次征文活动的摘录内容,完整的用户测试报告请查看:https://forum.mirrorship.cn/t/topic/7110

数据导入

❗️通过多种方式模拟真实的写入场景,包括历史数据的批量写入以及实时数据的持续写入。经测试 StarRocks 存算分离的写入吞吐与存算一体基本相当。

数据小黑
@浪潮:
总的来说,在我们的实际测试中,由于我们使用了自建的 MinIO,存算一体和存算分离在导入性能上基本保持一致。

导入方式:stream load (total bytes 7711779006);

张了了
@
聚水潭
资源稳定的情况下,存算分离开启本地缓存和存算一体写入基本持平。异步写入参数对于写入性能有较大影响,关闭后对于写入性能有大约 7 倍左右的提升。

导入方式:stream load

杨荣
单表同步任务使用 Flink 实时持续写入,单 BE 最高吞吐 120MB/s 左右。部分列更新场景写入峰值可达 11.8 w records/s,平时可以到 5w records/s 以上,满足业务对导数性能的需求。在近 50 个写入并发下,存算分离集群运行整体平稳。

导入方式:Flink 实时写入

rink
@天道金科:
使用 StarRocks 存算分离表相较于原有的 txt 数据存储到 OSS 的数据同步方式,写入吞吐有一倍左右的性能提升。

导入方式:DataX

Richard@芒果TV
导入性能符合预期

导入方式:stream load routine load SQL insert
Routine load 导入峰值12万 QPS,数据 json 格式,单条大小 300B 左右。
Stream load 导入峰值15万 QPS,数据 json 格式,单条大小 100B 左右。

SQL insert 使用 Hive catalog,将 Hive ORC 表数据 insert 到 OLAP 表,按照 Hive 天分区导入,4000 万数据导入耗时 90S 左右。

查询性能

❗️StarRocks 存算分离的版本通过 cache 机制达到了与存算一体版本相同的查询性能。

张了了
@
聚水潭
对于单 SQL 查询来看,开启本地缓存后有明显优化,查询性能基本和存算一体表持平,根据回放测试表现来看,基本都可以符合在 100 左右的 QPS

测试方法:50s 发送 5000 个查询

rink
@天道金科
对比 Spark,Trino 的查询框架,StarRocks 存算分离在 cache 命中的情况下有数十倍的性能优势。未命中 cache 的情况下也有数倍的性能提升。

杨荣
local 表与 cloud native 表的查询性能基本持平,q1 在 10 并发以上的场景下 cloud native 表都比 local 表查询性能要好。

任伟
简单查询场景下,存算分离的查询并发响应时间优于存算一体。复杂查询的场景下两者基本持平。

Richard
@芒果TV:
存算分离内表查询性能相比于 Presto 有 5 倍以上的性能提升,部分查询性能可以提升数十倍。

冷数据查询性能

❗️存算分离的优势之一是,存储可以独立于计算资源单独扩容。但是首次查询或者是大批量的历史数据查询时 cache 容量有限,需要对远端存储的冷数据进行分析。通过测试验证表明,存算分离的冷数据查询性能对比热数据(cache 命中)只有 50% 左右的性能下降。

任伟
冷热数据(本地是否有磁盘 cache)SSB 全部 SQL 有2.5倍左右的性能差距,TPC-H 全部 SQL 有1.5倍左右的性能差距。

查询性能扩展能力

❗️通过水平扩容的方式验证存算分离版本的查询性能提升。通过测试可以看到随着计算节点的增加,查询的响应时间会接近线性下降。

任伟
:可以看到不论是单表的简单查询还是多表的复杂查询,随着 BE 节点的增加查询性能均有明显的提升。

未来规划


未来,StarRocks 将继续坚定不移地优化存算分离架构,并会在以下方面持续发力:

  1. Cache 能力的持续优化:StarRocks 将使用自研的 Cache 来优化性能和效率
  2. Multi-warehouse:一份数据,多处计算。通过 multi-warehouse 技术实现真资源隔离,进一步提升业务系统稳定性
  3. 实时场景优化:我们在3.1版本将开启对主键模型表的存算分离能力支持,并且将继续优化存算分离场景下的实时能力
  4. 继续优化存算分离架构下的弹性能力:配合 multi-warehouse,在 multi-warehouse 内引入智能化的自动弹性能力,在业务峰谷期实现资源的自动伸缩,降本增效,省人也省事
  5. 继续深化推进存算分离:在 BE 存算分离基础上进一步实现 FE 的存算分离

想要再深入了解更多关于 StarRocks 存算分离架构吗?欢迎利用以下资源:

兼顾降本与增效,我们对存算分离的设计与思考

深入探索 StarRocks 存算分离架构

存算分离用户小组:

💬 StarRocks Feature Group 正式成立,欢迎入群对特定 feature 进行深入交流!

下方扫码添加小助手,回复关键字“存算分离”即可加入 StarRocks 存算分离用户小组,开启你的降本增效之旅!


关于 StarRocks 

Linux 基金会项目 StarRocks 是数据分析新范式的开创者、新标准的领导者。面世三年来,StarRocks 一直专注打造世界顶级的新一代极速全场景 MPP 数据库,帮助企业构建极速统一的湖仓分析新范式,是实现数字化转型和降本增效的关键基础设施。
StarRocks 持续突破既有框架,以技术创新全面驱动用户业务发展。当前全球超过 260 家市值 70 亿元以上的头部企业都在基于 StarRocks 构建新一代数据分析能力,包括腾讯、携程、平安银行、中原银行、中信建投、招商证券、众安保险、大润发、百草味、顺丰、京东物流、TCL、OPPO 等,并与全球云计算领导者亚马逊云、阿里云、腾讯云等达成战略合作伙伴。
拥抱开源,StarRocks 全球开源社区飞速成长。截至 2022 年底,已有超过 200 位贡献者,社群用户近万人,吸引几十家国内外行业头部企业参与共建。项目在 GitHub 星数已超 4800 个,成为年度开源热力值增速第一的项目,市场渗透率跻身中国前十名。




👇 阅读原文了解   产品详细信息

文章转载自StarRocks,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论