云数据库性能盲测对比

作者:xxinjiang2024.11.15 16:04浏览量:1922

简介:云数据库性能盲测对比

背景

云数据库的性能是关注的重点之一。一方面性能是最终成本的重要影响因素,更好的性能,通常意味着使用更少的资源支撑更高的业务量,从而降低整体成本。另外,性能还意味着在极端场景下,数据库的上限支撑能力。所以,近期对各个云数据库厂商做了一个较为系统的盲测性能对比,供开发者和企业在云数据库选型时的参考。

笔者认为,在云数据库厂商直接创建集群,各种参数均为默认参数,这种情况能最直观地体现产品的性能。因为很多用户,尤其是小白用户,在创建云数据库时并不会在参数上做更多的设置。本文中测试结果中,除规格切换为4C8G外,实例类型、磁盘类型、参数模板均为以下默认值进行性能测试。

测试结果来看,百度智能云磁盘IO读写、只写场景均有优势;阿里云全缓存场景优势比较明显;腾讯云只读场景优于百度云,读写与只写场景弱于百度智能云;华为云的表现有点奇怪,各个场景均弱于其他竞品,写场景性能差距明显。

详细测试数据对比见下图:

(蓝色:百度智能云 红色:阿里云 绿色:腾讯云 紫色:华为云)
3b1ec08a60ffd353.png
62d3f82aaa0ee992.png

测试方案

测试环境

1731657731137.jpg

测试工具

  • sysbench工具介绍:SysBench 是一个跨平台且支持多线程的模块化基准测试工具,用于评估系统在运行高负载的数据库时相关核心参数的性能表现。可绕过复杂的数据库基准设置,甚至在没有安装数据库的前提下,快速了解数据库系统的性能。sysbench官方文档

  • sysbench版本:1.0.20版本

  • sysbench测试模型:

  • sysbench 标准 OLTP 读写混合场景中一个事务包含18个读写 SQL。

  • sysbench 标准 OLTP 只读场景中一个事务包含14个读 SQL(10条主键点查询、4条范围查询)。

  • sysbench 标准 OLTP 只写场景中一个事务包含4个写 SQL(2条 UPDATE、1条 DETELE、1条 INSERT)。

性能测试的指标

  • 每秒执行请求数QPS(Queries Per Second)数据库每秒执行的SQL数,包含INSERT、SELECT、UPDATE、DETELE、COMMIT等。

评测方法

  1. 阿里云、百度智能云、腾讯云、华为云分别申请同配置云主机作为客户端

  2. 云厂商申请同等规格和配置的数据库实例

  3. Sysbench工具从云主机客户端向数据库实例发起读请求、写请求和读写请求

评测场景

  • 发压虚机:32核64G

  • 数据库实例类型:默认类型、通用型本地盘

  • 数据量:全缓存型、磁盘IO型

  • 测试场景:只读、只写、读写混合

  • 套餐类型:4C8G规格

  • 数据库版本:MySQL8.0版本

  • 并发数:16/32/64并发

  • 时间:10min/次

总体结论与分析:

默认类型场景下:百度智能云 > 阿里云 > 腾讯云 > 华为云

通用型本地盘场景下,阿里云>百度云智能云>腾讯云通用型本地盘场景下,阿里云>百度云智能云>腾讯云

  • 百度智能云的表现比较惊喜,默认类型略优于其他竞品5%+;通用型本地场景弱于阿里云9.7%,优于腾讯云4%;磁盘IO场景写场景有优势,全缓存场景弱于阿里云

  • 阿里云通用型云盘及本地盘在全缓存场景优势明显,优于其他竞品,但磁盘IO场景弱于百度智能云、腾讯云

  • 腾讯云通用型和独享型均不支持云盘,默认通用型本地SSD盘,整体性能略弱于百度智能云、阿里云,差距较小

  • 华为云的性能比较出乎意料,MySQL8.0版本通用型和独享型均不支持本地盘,独享型SSD云盘性能与其他厂商默认类型差距明显

欢迎了解百度智能云数据库