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

YMatrix 技术内幕:详解 10w+ TPS 背后的技术矩阵

YMatrix 2025-06-20
131

在 HTAP 场景中,针对分析(AP)负载,不少分布式数据都有不错的性能表现,而要支撑性能、并发要求严苛的交易(TP)型负载才是真正的难点。

目前,YMatrix 的 HTAP 能力已成功落地于多个大型客户的核心业务中,在高峰期 10万+ TPS 的高压下,依然能稳定运行。那 YMatrix 究竟是如何做到的?我们曾在YMatrix 的 HTAP 能力和其他数据库有何不同?分布式里套单机?YMatrix HTAP “神技”搞定 10w+ TPS两篇文章中进行了初步解读。

今天,我们将继续深入,拆解 YMatrix 背后支撑 TP 性能飞跃的关键技术矩阵。


1


非平衡部署+定域分布

非平衡部署:我们可以在指定主机上仅部署 1 个实例,实现资源独占,满足和 AP 负载的资源隔离需求;

定域分布:同时,可以将 TP 负载涉及的主要的表统一分布在一个节点上,使得绝大部分 TP 类查询都能由单实例完成,从而避免分布式架构的额外开销。

✏️ 相关使用文档:https://ymatrix.cn/doc/6.3/sql_ref/create_segment_set


2


查询单机化技术

在 YMatrix 中,通常的,查询的执行分为两部分:

1. 生成计划:由主节点上的 QD (Query Dispatcher) 进程完成

2. 执行查询:由所有数据节点上的 QE (Query Executor) 进程完成

分布式架构下,这种通用的查询执行方式,在 TP 场景中存在两类问题:

1. 小查询空转损耗:一些小查询,特别是点查,数据是分布在某个或某几个特定数据节点上,其他数据节点则不会被触及,这些与查询结果无关的数据节点参与并行计算,会在计划生成、结果处理、网络等待等方面产生额外的时间消耗,从而影响相应速度

2. 主节点资源瓶颈:在分布式数据库中,由于涉及多个数据节点以及大量分区表,查询计划所消耗的内存会远多于单机数据库,而由于计划都需要主节点上 QD 进程负责,当并发较高时,主节点的内存可能成为瓶颈,影响集群的并发能力。

YMatrix 的查询直推技术针对 TP 场景下的小查询 + 高并发的特点,分情况进行了两阶段深度优化。

2.1 Direct Dispatch - 提升速度

从图中可以看到,当主节点上的 QD 通过查询计划和分布规律判断数据仅涉及个别节点时,会仅仅将查询计划下发至相关节点和实例执行,从而避免与查询不相关的数据节点上的资源占用,更重要的是减少了主节点上 QD 收集、处理无关数据节点返回的空数据的时间,从而提升了 TP 型查询的处理速度。

2.2 Fast Direct Dispatch - 提升速度+提升并发

从图中可以看到,针对数据只存在于单一节点上的查询,原本由主节点的 QD 负责的生成计划工作,直接下发给了对应的数据节点上的 QE 执行,大大降低了主节点的内存消耗,从而实现了并发能力的提升。

✏️ 在使用时,YMatrix 会根据查询和表的特征,自动判断查询是否能够进行“单机化”处理,无需额外操作。


3


复制表

在涉及 JOIN 的查询中,由于分布式架构本身的特点,一个数据点可能需要从其他数据节点拉取数据,在数据拉取、传输等方面都会造成额外的开销。

通过将数据量较小的维度表设置为复制表,可以让该表在每一个数据节点上都保留一个完整的副本,这样在发生 JOIN 操作时,在本地即可读取数据执行计算,减少数据分布在不同主机上导致的传输的开销,从而提升相关查询的性能表现。

例如明细数据表有亿级数据,用户权限表却只有几百条数据:当查询将明细数据表与用户权限表关联时,若使用传统的分布表,则可能需要将权限表数据在所有数据节点间搬运;而通过将用户权限表设置为复制表,JOIN 时就可以在原地进行,就可以避免降低用户权限表中的数据在各个节点间的传输,从而提升查询性能。

✏️ 复制和普通的表仅分布方式不同,可用同样的方式插入、修改、删除数据,并由数据库保障多个副本间的强一致性。

更多介绍:https://ymatrix.cn/doc/6.3/datamodel/ddl_best_practice#9%20%E5%A4%8D%E5%88%B6%E8%A1%A8


4


Master-only 表

除了复制表,YMatrix 还支持 Master-only,即将数据存储于主节点上。其好处是彻底避免了分布式的开销,查询在主节点上即可完成执行,速度自然能够得到提升。

但如果主节点参与查询计算,自然会占用主节点大量资源;同时,对于分析型查询,无法利用分布式架构的并行计算优势,因此,在具体使用时,还需要更多的仔细的权衡。


5


结语

提升 TP 场景性能是一项系统性工程,需要大量技术投入。除了以上技术创新,YMatrix 还在内核很多细节上做了大量的优化,最终才能保障在客户生产环境中平稳支持 10万 + TPS 负载的效果。

感谢你的阅读,YMatrix 期待与志同道合的你一起同行。

扫码添加小 M 助手

加入官方技术交流群

电话 | 400-800-0824

官网 |www.ymatrix.cn

推荐阅读

YMatrix 技术

头部 ERP 厂商如何快速切入 AI 赛道?YMatrix 落地实录

数仓架构告别「补丁」时代!全新批流一体 Domino 架构终结“批流缝合”

YMatrix 王健:从Greenplum 到下一代数仓

向量 + 超融合,打造大模型应用的数据中枢

通过 SQL 实现海量 GIS 数据的轨迹关联计算,确定不了解下?

技术探讨 | YMatrix 如何将 TPC-H 性能提升 10 倍?

开源!MatrixBench:实时物联网场景的数据压测“兵法秘籍”

客户案例

从 Hadoop 生态到 YMatrix 体系,某车企换来 10 倍性能提升

大型连锁便利店:从 Greenplum 到 YMatrix,报表查询性能提升 10 倍

国产化+性能王炸!这套国产方案让 3.5T 数据 5 小时“无感搬家”

查询效率提升 23 倍,中兴联合 YMatrix 为运营商打造超融合数据底座

某保险集团车险部门基于 YMatrix 的海量时序数据分析实战

从 Greenplum 到 YMatrix,头部动力电池厂商核心业务数据的迁移实践

理想问鼎销冠,数据库能帮助新能源车企赢得下半场么?

行业实践

超融合数据库:解锁全场景数据价值的钥匙

“全息投影”式精细财务分析究竟需要什么样的数据库?

银行、证券、保险...金融行业的数据库应该怎么选?

Greenplum 迁移

YMatrix 王健:从Greenplum 到下一代数仓

大型连锁便利店:从 Greenplum 到 YMatrix,报表查询性能提升 10 倍

从 Greenplum 到 YMatrix,头部动力电池厂商核心业务数据的迁移实践

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

评论