今年好像特别流行打榜,尤其是大模型领域,各种各样的测试不断刷新性能“天花板”。在数据库领域,能够证明数据库技术实力的榜单不多,TPC(事务处理性能委员会)给出的评测结果代表了业界权威,我们看到的TPC-C、TPC-H、TPC-DS都是来自该组织的不同能力测试。很多明星级企业把TPC的不同打榜看成是数据库领域的“奥林匹克”,通过参与“竞技”的方式证明自己的性能和实力。
作为“国产之光”,腾讯云数据库TDSQL继去年以每分钟处理8.14亿笔交易打破TPC-C世界纪录之后,今年再次斩获佳绩,以高出第二名3倍以上的得分登顶TPC-DS榜首。至此,腾讯云数据库TDSQL实现OLAP 、OLTP双料世 界 第 一。
霸榜TPC-DS背后
“打榜不是我们的最终目的,只是衡量产品能力的一个测试,是一个阶段性总结!”腾讯云数据库研发总经理潘安群,在介绍TDSQL如何霸榜TPC-DS之前,先强调了打榜初衷。
提到OLAP“打榜”,有人可能还不太理解。为什么说TPC-DS基准测试如此重要?这里先普及一个概念,虽然普罗大众很少接触数据库,但很多DBA都比较清楚,人们日常生活中接触比较多的是OLTP(在线事务处理)场景,比如:电子商务、银行系统、航空订票系统等。当用户在网站把商品添加到购物车、进行下单时,背后就是OLTP数据库在支撑交易。当商家要对用户数据进行分析,比如:需要对某一个地区上半年的销售额进行统计,这时候就会用到OLAP(在线数据分析)数据库。
由于OLAP系统要处理大量数据的复杂查询,所以更具挑战性。本次TPC-DS打榜,被称为是业内公认的高难度数据库系统基准测试,这次模拟的是一家大型零售商的数据,通过不同类型的分析任务,考察底层数据库的处理耗时、并发性能和导数性能等指标。
所以,“跑个分、不服来战”,不能只是嘴上说说而已,需要具备“真刀实枪”的操作能力。此次测试有99个复杂的SQL查询,涉及数据导入、复杂SQL串行执行、复杂SQL并行执行、数据导入变更4个部分,同时需要对10TB规模数据进行跑分。TDSQL能以高出对手3倍的得分位居榜首,有两个重要原因:1、自研的数据库查询引擎更好地利用了CPU单核性能的利用率;2、凭借分布式数据库系统的特性,采用自研的MPP引擎,有效消除了进程之间的阻塞。
回顾整个打榜过程,没经历过的人可能没办法理解。 如果用一个形象一点的说法来解释,TPC-DS跑分就好比“用最快的速度在盖一栋摩天大楼”,数据就是“沙子、钢筋和水泥“等基础材料,而算力和CPU就如同各种”建筑工具“,要通过合理的组合,才能完成复杂任务。在“大楼建造”过程中,工程团队首先做的工作是“算力优化”,通过特定任务处理、软硬件协同以及用执行特定任务的芯片来提高效率。其次是”任务调度”,当很多任务拆成多个小任务后,需要确保这些任务之间的依赖关系不会造成阻塞或等待。例如,如果刷墙的人因为前面的墙体还未砌好而闲置,那么就出现了任务阻塞的问题。为了提高资源利用率,需要合理调度任务,确保每个人都在忙碌且高效地工作。
最后,经过层层闯关,腾讯云数据库TDSQL以卓越成绩成功霸榜。7260万性能评分、37.52元的单位成本、串行任务单SQL平均耗时4秒(只花了第二名一半的时间)、并行耗时8秒(仅需第二名的1/3时间)、将决策支持类榜单纪录提升了3.8倍……腾讯云数据库 TDSQL在TPC-DS的表现,强势刷新了以往OLAP性能和性价比纪录。
为什么是TDSQL分布式数据库?
值得一提的是,此次腾讯云数据库用来打榜的产品不是传统意义上的OLAP数据库,而是TDSQL分布式数据库。在数据库技术不断创新与融合过程中,TDSQL-A被并入了分布式数据库。那么,TDSQL整体产品策略是什么?如何看待TP与AP数据库的未来发展?
“TDSQL整个产品家族会向TP+AP综合能力演进,以满足客户对实时数据分析的迫切需求。”在腾讯云数据库总经理王义成看来,随着结构化数仓市场的逐渐饱和,红海竞争愈发激烈,寻找新的突破口成为当务之急。准确来讲,传统的分析型数据库虽然仍占据一定市场份额,但在当前市场环境下,HTAP(混合事务/分析处理)会更具发展潜力。
说白了,TDSQL参与OLAP打榜,并不是想强调某一单一能力,而是在融合场景下的混合能力。TDSQL不仅可以满足TP场景下的高要求,在AP能力支撑上也有更优秀表现。虽然,当前大部分TP用户对AP能力要求可能没有那么高,但不排除有用户对TP和AP都有高性能需求的情况。尤其随着智能数据库时代的到来,对数据库的综合能力要求会越来越高。
站在数据管理的更高层面,我们还看到了数据湖与数据仓库融合的趋势,即湖仓一体。随着大数据技术的飞速发展,图片、视频等非结构化数据逐渐增多,这些数据被加载到数据湖中。为了实现对这些数据的高效分析,企业需要将湖中的数据向量化,并存储到向量化的数据库中。这一流程串联起从数据湖到向量数据库,再到最终的大模型分析场景,形成了完整的数据处理与分析链条。
此种背景下,纯分析型数据库的市场空间相对有限,而HTAP场景则展现出了更广阔的应用前景。因此,腾讯云数据库将TDSQL定位为一个大的分布式数据库家族,支持多种数据库模式,如MySQL、PG、Oracle和SQL Server等,以满足客户在不同场景下的需求。
更重要的是,随着IT基础设施的不断演进,数据库的角色也在发生变化。过去,以Oracle等为代表的TP数据库几乎承载了企业所有的IT需求,包括事务处理、分析处理、缓存以及报表等。现在,随着大数据、缓存等技术的兴起,数据库的单一功能逐渐被解耦,其在IT预算中的占比也逐渐下降。面对这一市场变化,TDSQL的目标是向综合性的分布式数据库家族演进,通过行存与列存的结合,灵活应对各种复杂场景,为客户提供更加全面、高效的数据库解决方案。
在实际应用中,分布式数据库更能满足数据的一致性和实时在线分析要求,解决了传统集中式架构成本高昂的问题,能以更低的成本实现相同的性能,特别适用于融合创新场景。在这次打榜的架构下,TDSQL解决了分布式调度和交付的瓶颈问题,保证了在低成本分布式架构下达到良好的兼容扩展性和一致的性能,最终数据指标再次验证了其实际业务场景中强大的支撑能力。
结论:
在打榜这件事上,腾讯云数据库好像是一个“激进派”,目标永远是下一个顶峰。但如果你真正走进腾讯云数据库,就会发现TDSQL取得的所有成绩,都是在实际生产场景中“不断踩坑”的结果。所以,不管是TPC-DS,还是之前的TPC-C,腾讯云数据库“不为打榜而打榜”,而是在服务客户过程中自然而然孵化出的一种能力。