概述

之前,我们对比了阿里云RDS的经济版(ARM)与x86版的性价比,这次我们来看看华为云的RDS MySQL的“通用型”(x86)与“鲲鹏通用增强型”(ARM)版本的情况如何。

这里依旧选择了用户较为常用的4c16g的规格进行测试,测试工具使用了sysbench的oltp_read_write模型进行测试。配置参数与选项,均尽量使用RDS购买过程中的默认选项,以给出更加接近用户使用时的配置。具体的,使用了华为云SSD云盘存储,选择了MySQL 8.0实例。

结论

华为云的x86与鲲鹏架构的RDS规格价格几乎是相同的。在本次测试中,鲲鹏版本的RDS相比x86版本约有15~45%的性能差距。不过,也必须要考虑,当下华为所处的“技术封锁”环境,以及自研鲲鹏芯片在中国自主可控芯片中的重要地位,在国内大量无法使用x86的场景中,这个性能下降是完全可以接受。另外,在当下复杂的地缘政治背景下,在更多的场景中使用自研芯片也是非常有必要的。

测试方法说明

这里使用了sysbench的读写混合模型(oltp_read_write)进行测试,单表大小为100万,共十个表,单次测试时长为300秒,分别测试了如下的并发度的性能表现:2、4、8、16、24、32、48、64、96、128。

测试使用的华为云RDS的主备跨可用区、高可用、SSD云盘、MySQL 8.0版本。

详细测试数据参考

鲲鹏通用增强型的4c16g实例的测试详细结果如下:

threads|transactions| queries| time |avg/Latency|95%/Latency 2|59875| 1197500|300.01| 10.02| 13.46 4| 110962| 2219240|300.01| 10.81| 15.00 8| 195460| 3909200|300.01| 12.28| 17.32 16| 275443| 5508860|300.02| 17.43| 23.95 24| 314560| 6291200|300.02| 22.89| 32.53 32| 339116| 6782320|300.02| 28.31| 41.10 48| 366827| 7336540|300.03| 39.26| 58.92 64| 377796| 7555920|300.02| 50.82| 80.03 96| 376462| 7529240|300.06| 76.51| 134.90128| 381086| 7621720|300.09| 100.78| 161.51

通用型(x86版本) 4c16g实例的测试详细结果如下:

threads|transactions| queries| time |avg/Latency|95%/Latency 2|70027| 1400540|300.01|8.57| 10.84 4| 131431| 2628620|300.01|9.13| 11.87 8| 232901| 4658020|300.01| 10.30| 13.70 16| 381979| 7639580|300.02| 12.56| 17.01 24| 484093| 9681860|300.02| 14.87| 20.37 32| 558496|11169920|300.02| 17.19| 23.52 48| 641926|12838520|300.03| 22.43| 31.37 64| 683710|13674200|300.03| 28.08| 40.37 96| 688588|13771760|300.04| 41.83| 69.29128| 696658|13933160|300.05| 55.12| 81.48

规格与价格详情

小结

自2019年,华为被美国列入“出口管制实体名单”以来,依旧可以在华为云上买到鲲鹏芯片已经是某种意义的重大突破。在实际测试过程中,相同的价格,约有30%的性能下降,考虑到鲲鹏芯片在国产芯片中的位置,依旧是非常出色的产品。在国产化要求高的场景,以及未来规划考虑国产化的场景,都可以开始尝试使用。华为,加油!

关于作者:orczhou,云数据库技术专家,NineData联合创始人,Oracle ACE(MySQL),《高性能MySQL》第三、四版译者,曾任阿里云数据库资深专家。