乐趣区

关于数据库:云数据库技术|重磅升级后再测TDSQLC

起源:云数据库技术

题目 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 的降级版本在更多的地区中上线。

退出移动版