本文介绍了PolarDB MySQL引擎8.0版本历史库(X-Engine引擎)和集群版(InnoDB引擎)的OLTP负载性能测试结果。

PolarDB MySQL引擎历史库使用阿里云自研存储引擎X-Engine,具备了强大的数据压缩能力,能够满足归档数据库低存储成本的要求,适合大数据量归档存储的场景。经阿里巴巴内部使用历史库的业务验证,在相同原始数据量的情况下,历史库消耗的存储空间仅为InnoDB引擎数据库的1/5~1/3。更多详情,请参见历史库

说明
  • 历史库中包含了一个主节点,而集群版中默认包含了一个主节点和一个只读节点两个节点,因此为保证可比性,在测试集群版时,也仅使用了主节点而未使用只读节点。
  • 历史库集群版使用了不同的引擎,因此为保证两种引擎均压测至极限性能,测试相同规格节点时,两种引擎使用的线程数略有差异。
  • 具体测试步骤请参见性能测试方法(OLTP)
从如下测试数据可以看出:
  • 相同读节点资源的情况下,历史库的只读性能与InnoDB引擎数据库基本持平。
  • 相同节点规格的情况下,历史库的写入性能与InnoDB引擎数据库的差异在20%左右。

各规格只读性能对比

read only
说明 上述测试中未开启所有范围的查询,即设置了 range_selects参数为0,故性能较高。

各规格写入性能对比

  • 写入QPS对比。QPS
  • 写入TPS对比。TPS
说明 上述查询中:
  • 写入QPS:指数据库每秒执行的SQL请求(包含BEGIN、COMMIT、INSERT、UPDATE、DELETE)数。
  • 写入TPS:指数据库每秒执行的事务数,以COMMIT成功次数为准。

更多关于写入QPS和写入TPS的测试方法,请参见使用SysBench测试写入性能

各规格混合读写性能对比

  • 混合读写QPS对比QPS
  • 混合读写TPS对比TPS