云数据库技术|“重磅升级”后再测TDSQL-C

来源:云数据库技术

标题1.摘要

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

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

标题2.详细测试结果

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

云数据库技术|“重磅升级”后再测TDSQL-C_第1张图片

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

云数据库技术|“重磅升级”后再测TDSQL-C_第2张图片

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

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

3.测试说明

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

数据库规格:

云数据库技术|“重磅升级”后再测TDSQL-C_第3张图片

客户端规格:

云数据库技术|“重磅升级”后再测TDSQL-C_第4张图片

压测命令:


-- 准备数据
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_第5张图片
云数据库技术|“重磅升级”后再测TDSQL-C_第6张图片
云数据库技术|“重磅升级”后再测TDSQL-C_第7张图片

云数据库技术|“重磅升级”后再测TDSQL-C_第8张图片

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

只读场景:
云数据库技术|“重磅升级”后再测TDSQL-C_第9张图片
云数据库技术|“重磅升级”后再测TDSQL-C_第10张图片
云数据库技术|“重磅升级”后再测TDSQL-C_第11张图片
云数据库技术|“重磅升级”后再测TDSQL-C_第12张图片

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

只写场景:
云数据库技术|“重磅升级”后再测TDSQL-C_第13张图片
云数据库技术|“重磅升级”后再测TDSQL-C_第14张图片
云数据库技术|“重磅升级”后再测TDSQL-C_第15张图片
云数据库技术|“重磅升级”后再测TDSQL-C_第16张图片

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

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

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

云数据库技术|“重磅升级”后再测TDSQL-C_第17张图片

云数据库技术|“重磅升级”后再测TDSQL-C_第18张图片

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

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

5.总结

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

你可能感兴趣的:(云数据库技术|“重磅升级”后再测TDSQL-C)