数据库管理281期 20245-01-09
数据库管理-第281期 对国产数据库,我为什么不做一些性能测试(20250109)
作者:胖头鱼的鱼缸(尹海文) Oracle ACE Pro: Database PostgreSQL ACE Partner 10年数据库行业经验 拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证 墨天轮MVP,ITPUB认证专家,数盟会长老会成员,OCM讲师 PolarDB开源社区、青学会MOP社区技术顾问 HaloDB外聘技术顾问 OceanBase观察团成员 IF CLUB社区联合发起人 圈内拥有“总监”称号,非著名社恐(社交恐怖分子) 公众号:胖头鱼的鱼缸 CSDN:胖头鱼的鱼缸(尹海文) 墨天轮:胖头鱼的鱼缸 ITPUB:yhw1809。 除授权转载并标明出处外,均为“非法”抄袭
话说在之前的文章中,我也装了不少国产数据库了,有些也进行了较为深入的功能性试用,但是很少进行性能相关测试,这是为啥叻?本期请听我婉婉道来。
1 架构各异
其实针对不同的数据库,甚至是同一个数据库产品,都会有不同的架构,有单机、有主备、有副本、有共享存储集群、有分布式等等,不同的架构需要的机器数量不同,对测试的数据也需要处理,不同架构相同的资源也不公平。所以我确实没有那么多精力和实力来搞定这些事情。
2 硬件成本
目前我对国产数据库各类集群的安装主要还是通过虚拟机实现,规格有限。上一节也说过,不同的架构也对应着需要的机器数量,同时很多时候国产数据库对硬件的规格要求也比较高,采购对应的包括服务器、磁盘、交换机、存储等硬件设备的费用,如果算上不同品类的硬件(X86与ARM、不同品牌等)就更多了,这些还需要场地和电,都是钱啊!
3 测试方式
其实,在一些其他数据库圈的公众号也说过,针对于标准测试,其实有很多可以“作弊”的方法,已经被摸透了,这也从另一个角度说明这些标准测试的语句相对简单且标准,对应的数据亦是如此。带点烂SQL或者复杂SQL才是应该的。
另一方面一般的测试也没有在足够大的数据量与高频数据变更下进行足够长时间的测试,这种测试无法测试出很多底层存储的坑,比如碎片、转储、融合等对性能的影响。同时长时间的测试也能更好的测试出性能稳定性与数据库的维护性。
需要做到以上的,同样没有精力和实力!
4 怕得罪
其实吧,这个才是重点,前面的种种,花点时间,组点人,拉点赞助,都能整出来。
但是!没法做到权威!
一是怕测试结果达不到一些厂商的预期,毕竟对于国产数据库我们大多数都是“外行”,没有原厂的势力和那些“奇技淫巧”;另一方面一旦测试的产品多了,一定有对比,有对比就必然有“明争暗斗”、“暗潮涌动”,也势必的得罪一些厂商。
5 期望
数据库是一个通用化的产品,我希望能降低使用难度,能让大家“肆无忌惮”的测出来,这样大家才能了解真正这个产品,才能真正的用起来。也许,真到那个时候,也是国产数据库真正能用且好用,可以真真正正的实现替换要求了,只不过从目前来看,有些数据库光是“传说”就是恶龙,道阻且长。
总结
总监也是普通人啊,很多事情是搞不定的。
老规矩,不知道写了些啥。