解密HTAP数据库测试基准HyBench系列的前三篇文章,介绍了HyBench工具研发背景、基准测试指标、测试模型及数据集等内容。本篇将通过HyBench在国内主流数据库上的实践应用,深度介绍HyBench对产品研发的价值。
OceanBase:已将HyBench加入每日自动化回归平台
区别于传统的ETL架构,OceanBase基于底层的原生分布式架构,在同一数据库处理HTAP负载,同时具备实时数仓和大数据量的事务处理能力。但如何评价数据库系统在HTAP场景的表现情况,是一直以来困扰大家的问题。HyBench的出现很好地解决了上述问题,在OceanBase HTAP数据库的研发过程中对其不同的研发理论进行了测试验证。
对于事务处理的能力验证:OceanBase 4.x采用单机分布式一体化的架构,引入日志流的概念,将存储分片和事务解耦,一个事务的日志流解决多个存储分片的事务,来降低数据库集群的分布式开销。使用HyBench对OceanBase数据库3.x版本和4.x版本进行对比验证测试,新版本的事务处理性能提升约1倍,很好地印证了新架构的优势。
对于复杂查询处理的能力验证:OceanBase新版本中,推出包括auto dop、一体化SQL引擎等多个新功能,将简单查询和复杂查询融入到一套系统里。在数据库内核研发的过程中,HyBench同样发挥了很好的验证作用,测试结果显示,OceanBase新版本的查询分析性能提升了0.5到1倍。同时HyBench还测试出多个很有价值的bug,提升了系统的稳定性。
列存研发验证:在OceanBase发布的实验室版本中推出了新的存储引擎——列式存储,列式存储具有更高的数据压缩比,能有效降低用户的存储成本,同时也有效降低了IO读取的代价,提高了查询效率。在列存研发的过程中,HyBench验证了列式存储在大数据量下实时分析查询能力的优势。
读写分离架构验证:OceanBase具备在同一副本上同时执行OLTP和OLAP负载并实现资源逻辑隔离的能力,也具备在不同副本上分别执行OLTP和OLAP负载从而实现资源物理隔离的能力(读写分离架构)。通过HyBench对读写分离和读写同副本进行测试,读写分离架构在事务处理和查询分析性能均有提高,但也产生数据同步延迟时间。
OceanBase目前已将HyBench加入到研发的每日自动化回归平台,监控研发版本的每日性能表现,保证HTAP负载没有因新引入问题导致的性能回退。HyBench也可用于及时观察数据库优化研发过程中的性能表现,测试实验数据为性能优化提供技术参考。
达梦:HyBench在评价指标设计上充分考虑了数据新鲜度
在HTAP数据库设计中,达梦分别采用了ETL架构与原生HTAP架构两种构型,并使用HyBench对两种构型进行了测试比对。

测试结果显示,当使用ETL构型时,由于资源隔离极好,OLTP负载的TPS较原生HTAP构型高出很多,但同时由于资源隔离使得数据同步存在延迟,达到了1分钟级别,导致数据新鲜度受到了影响。在原生HTAP构型下,由于共享资源,OLTP负载的TPS受到了一定影响,而数据库新鲜度则是最优水平。
HyBench作为面向HTAP场景的基准测试,在评价指标设计上充分考虑了数据同步延迟对测试结果的影响,并体现在本次测试中:虽然ETL构型具有更好的事务处理性能,但由于数据新鲜度不佳,导致原生HTAP构型的测试结果优于ETL构型。这也是该基准对HTAP数据库开发商提出的新挑战:HTAP难点不在于“可以运行OLTP和OLAP两种负载”,而是在于“如何在保障良好新鲜度前提下,做好负载隔离性,提供足够好的OLTP和OLAP性能”。
openGauss:HyBench测试结果指导产品研发工作
openGauss使用HyBench对数据库进行了评估测试,测试了多个版本(openGauss 5.0.0、5.1.0、5.1.1、6.0.0及每日构建版本等)、多种配置和优化策略下的结果,以验证openGauss在混合事务和分析处理方面的功能是否符合预期。
HyBench的多种工作负载可以评估数据库在处理不同类型请求时的性能表现,通过查看执行时间、吞吐量、新鲜度和资源利用率等指标的结果,可以快速识别openGauss在处理混合负载的优化策略方面的优势和不足,帮助确定性能瓶颈和潜在的优化方向,从而指导产品的研发工作。
HyBench作为一款功能强大的基准测试工具,对openGauss产品研发具有重要的价值。它可以帮助openGauss团队进行性能评估、功能验证、竞争分析和优化方向的确定,同时也为用户提供了选择openGauss的依据。
PolarDB:HyBench促进产品优化和性能升级
PolarDB HTAP基于阿里云自研的IMCI(In-Memory Columnar Index)技术,提供了一种高效的数据处理方案,支持高并发的OLTP和实时的OLAP在同一数据库系统中无缝集成。
在HyBench诞生之前,市场上可供使用的HTAP负载测试工具屈指可数,且在数据模型、工作负载、评测指标方面无法支撑对HTAP的核心技术进行评价。而Hybench的设计基于HTAP数据库的特点,模拟实际场景中的HTAP应用,采用了一种混合负载策略。特别是HyBench考虑了数据新鲜度的问题,通过度量数据的更新频率和查询结果的时效性,来评估数据库在处理实时分析查询时的性能。
对PolarDB IMCI通过Redo物理复制以及一系列基于RDMA网络的优化措施,来降低只读分析节点和写入节点的复制延迟,这一产品优势可以通过HyBench很好的展现出来。分别通过HyBench的OLTP、OLAP和OLXP的负载测试,可以评估PolarDB HTAP处理高并发事务请求时的性能、执行复杂分析查询时的效率和处理混合型负载时的性能,并且测评PolarDB HTAP集群在不同数据一致性配置下的数据新鲜度表现。
通过HyBench评估PolarDB HTAP在处理各类负载时的能力,能够准确地识别出可优化方向和潜在的改进空间,有助于指导PolarDB HTAP的产品研发团队不断优化产品,提升性能,增强市场竞争力,以满足用户对高性能、高可用性和低成本数据库解决方案的需求。
TDSQL:透过HyBench看行列混存
TDSQL是腾讯云打造的一款分布式数据库产品,通过支持行列混合存储提供HTAP能力,可以实时将行存数据同步至列存,并通过SQL解析为用户请求自动选择适合的存储。
行列混存的模式使得在线事务处理和复杂语句查询有了一定的资源隔离性,同时行存数据与列存数据之间的同步机制也会对数据新鲜度产生影响。TDSQL支持数据强一致性查询和异步同步两种同步机制,可以满足不同的业务场景需求。
使用HyBench对两种同步机制进行对比测试的情况下,测试结果显示,在两种同步机制下,事务处理(OLTP负载与OLXP中的分析型事务)性能几乎相同。这是为了保证数据一致性,无论设置为哪种同步机制,执行在线事务时都会使用强一致性查询。在异步同步查询机制下执行复杂查询时,可以忽略一致性要求执行数据异步同步,此时数据库的查询分析性能提升,而数据同步出现延迟时间。
自HyBench发布以来,许多数据库厂商和用户都进行了试用,并给予了积极反馈。一系列的测试实验可以证明,HyBench作为HTAP数据库测试基准已较为成熟,具备了开展商业测试的能力。后续中国软件评测中心将基于现有成果,面向市场提供HTAP数据库基准测试服务。
目前,HyBench基准评价工具软件已经在开放原子开源基金会的Atomgit平台及开源中国的Gitee平台上进行开源,欢迎业界同仁积极下载试用,反馈问题与建议,共同推动推动HTAP数据库产品的优化与健康发展。
代码下载地址:
https://atomgit.com/cstc2023/HyBench
https://gitee.com/cstc2023/hybench