来源:云数据库技术

标题 1.摘要

前段时间,测试了国内主要云原生数据库 PolarDB、TDSQL-C、GaussDB 的性能,参考:《再测云原生数据库性能》。在上次测试结果中,由于地域版本差异,腾讯云的 TDSQL-C 并没有表现出“重磅升级”的效果,现在两个月过去了,我们再来重测 TDSQL-C。先说结论:

相比之前,本次 TDSQL-C 性能有了非常显著的提升,在这里的场景与规格(4c16g)下,读写性能相比之前提升了 80%经过与腾讯云数据库团队沟通,选择了在已经完成“重磅升级”的“北京六区”进行测试;另外,据悉,预计 12 月底,所有地域将完成升级

标题 2.详细测试结果

TDSQL-C 在「读写混合」场景下,8 月比 6 月的性能有显著提升:

各厂商在「读写混合」场景下的压测结果,TDSQL-C 升级之后,性能显著提升:

注意:阿里云和华为云为 6 月份的测试数据

本次测试的主要目的是对比 TDSQL-C 升级前后的性能差异。可以看到,腾讯云的 TDSQL-C 在升级之后性能显著提升,某些场景下甚至提升了近一倍的性能。

3.测试说明

这里对我们的测试方式做一个详细说明。本次测试还是选择 4c16g 的规格进行对比,使用了工具 sysbench 1.0.20 版本进行测试。具体的,在「读写」、「只读」、「只写」3 个场景下进行 2~512 个线程的压测, 获取每秒执行事务数 TPS(Transactions Per Second)、每秒执行请求数 QPS(Queries Per Second)来作为性能对比指标。

数据库规格:

客户端规格:

压测命令:

 

-- 准备数据sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=10000000 --tables=10 --events=0 --time=300 --threads={2~512} oltp_read_write prepare
-- 运行workload# OLTP读写混合sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=10000000 --tables=10 --events=0 --time=300 --threads={2~512} --percentile=95 --report-interval=1 oltp_read_write run
# OLTP只读场景sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=10000000 --tables=10 --events=0 --time=300 --threads={2~512} --percentile=95 --report-interval=1 oltp_read_only run
# OLTP只写场景sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=10000000 --tables=10 --events=0 --time=300 --threads={2~512} --percentile=95 --report-interval=1 oltp_write_only run
-- 清理数据sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=10000000 --tables=10 --events=0 --time=300 --threads={2~512} --percentile=95 oltp_read_write/oltp_read_only/oltp_write_only cleanup
 
 
 
复制代码
 

说明:10 张表,每张表 1000 万数据,数据集约 25G,2~512 个线程进行压测。

补充说明:

TDSQL-C 支持了自动读写分离(Proxy),但其 Proxy 暂不支持事务拆分,虽然通过 Proxy 地址,但也只在读写节点上执行。如果想充分发挥读写分离的优势,可以通过工单方式让腾讯云的工作人员修改 Proxy 策略,或开启 sysbench 的参数--skip-trx(非事务模式)才能使用只读节点,本文测试没有开启该参数。

读写内网地址(高可用地址,用 RW 表示)和 数据库代理地址(自动读写分离地址,用 Proxy 表示)。

4.测试详情

TDSQL-C 升级之后是否有提升?

读写场景:

读写场景结论:TDSQL-C 8 月份的性能比 6 月份平均高出了近 80%。

只读场景:

只读场景结论:TDSQL-C 8 月份的性能比 6 月份平均高出了近 70%。

只写场景:

只写场景结论:TDSQL-C 8 月份的性能比 6 月份平均高出了近 120%。

小结:通过以上三个场景的压测对比,可以看到 TDSQL-C 8 月份比 6 月份性能有显著提升,特别是只写场景下,提升了 1.2 倍。虽然 TDSQL-C 支持了自动读写分离,但因 Proxy 暂时不支持事务拆分,虽然通过 Proxy 地址,但也只在读写节点上执行,所以性能比用读写地址的低一些。

TDSQL-C 升级之后是否有超越?

注意:阿里云和华为云为 6 月份的测试数据。

可以看到,腾讯云的 TDSQL-C 在升级之后性能显著提升,大大提高了其竞争力,也让用户在云原生数据库上有了更多的选择。

5.总结

通过上面的压测数据,看到了 TDSQL-C 在“重磅升级” 之后带来的性能提升,并且功能上也支持了自动读写分离(后续会默认支持事务拆分),极大提高了其在云原生数据库上的竞争力。最后,期待 TDSQL-C 的升级版本在更多的地域中上线。

最新文章

  1. hadoop程序问题:java.lang.IllegalArgumentException: Wrong FS: hdfs:/ expected file:///
  2. useradd命令老是忘记的参数
  3. Dependency Injection
  4. Thrift入门及Java实例演示
  5. const,readonly 常量与只读
  6. 进程控制之wait和waitpid函数
  7. Headfirst设计模式的C++实现——适配器(Adapter)
  8. 其实H5制作就这样~
  9. 【集训笔记】贪心算法【HDOJ1052 【HDOJ2037
  10. CentOS 添加常用 yum 源
  11. PostgreSQL服务端监听设置及client连接方法
  12. activity管理类 appManager
  13. CDN架构以及原理分析
  14. js中的柯里化
  15. [Windows Azure] How to Configure Cloud Services
  16. hdu 5056 Boring count (窗体滑动)
  17. (二)MySQL中级篇
  18. 同步网络时间到linux服务器(先修改时区再进行同步网络时间)
  19. Grunt项目构建-插件学习
  20. 【英语】Bingo口语笔记(84) - 惊讶的表达

热门文章

  1. AOV网的实现(数据结构)
  2. 基于图的深度优先搜索策略(耿7.10)--------西工大noj
  3. Dubbo源码(四) - 服务引用(消费者)
  4. 从零开始实现lmax-Disruptor队列(六)Disruptor 解决伪共享、消费者优雅停止实现原理解析
  5. 羽夏看Linux内核——引导启动(上)
  6. java中为什么只存在值传递(以传入自定义引用类型为例)
  7. bs4爬虫的一点心得----坑
  8. Webstorm设置背景图为Windows桌面背景
  9. Unity3D学习笔记12——渲染纹理
  10. JavaScript 函数对象(Function 对象)