崖山共享集群产品能力观测:细节足见功底
本文基于前泽塔数科研发总监-王若楠2024年11月在“2024年国产数据库创新生态大会”-“根”技术专场的演讲整理形成,主要对崖山共享集群YAC的架构、功能、高可用性、性能四大方面进行全面测试,并分享了测试环境和测试结论。
年初,基于某些商业考量,我们团队对崖山共享集群数据库(YAC)进行了测试。起初,我持有怀疑态度,这既源于近年来数据库领域出现的乱象,也因为我作为共享存储架构研发人员,深知其中的技术难度。经过全面的测试后,崖山共享集群YAC的稳定性、成熟度、独特性均超出了我们的预期。
共享存储集群架构为什么如此重要?
综上所述,核心业务系统中的功能性需求可以通过简单的修改和调整来满足。然而,高可用性、性能以及扩展性等问题,必须依赖于数据库的核心技术来解决。
YAC产品到底能力如何?
测试环境
128核X86架构,详细配置如下。

架构层面
测试目标
-
-
测试YAC是否为全对称架构,每个节点都可进行读写。
-
测试产品的独特性。
-
测试项
-
-
针对第一点,我们主要对各个节点的读写性能表现进行了多种反复观测,发现四个节点的读写性能表现是相似的,四个节点均具备读写能力。 -
针对第二点我们主要查看了其进线程结构、存储结构、文件系统等,其存储文件系统进线程结构均不同于市面其他产品,具有自己的独特性与原创性。
-

测试结论
功能层面
测试目标
-
-
测试与Oracle的兼容度。
-
测试功能的完整性。
-
测试项

测试结论
产品系统表、系统视图、DBA视图、PL/SQL、事务、非自动提交及回滚方式、功能等与Oracle高度兼容。
在保持与Oracle和MySQL在细节功能及使用习惯上的一致性的同时,也对功能进行了丰富。
高可用性
测试目标
测试YAC产品在性能极限的负载下,当系统故障时(软件BUG、硬件故障或掉电、网络中断、介质失效等),是否能做到数据不丢失(RPO=0),服务中断时间很短(RTO<30S)。
测试项

测试结论
YAC产品在性能极限的负载下做高可用测试,所测故障场景均可做到正确的识别切换,RPO=0,RTO<15S,一致性正确。
性能层面
测试目标
-
-
测试单机的极限性能值。
-
测试集群对单节点性能的影响。
-
测试YAC扩展性。
-
测试结论


-
-
YashanDB单机最高性能202万,且CPU占用率接近65%左右;
-
YAC集群单实例最优194万,相对单机202万可知YAC集群架构几乎对单节点的性能没有影响;
-
YAC四节点集群随节点数的增加,性能基本呈线性增长,四节点性能高达520万tpmC。
-
一句话评价:细节足见功底



