【腾讯云 TDSQL-C Serverless 产品体验】基于TDSQL-C MySQL Serverless的性能测试
一、数据库性能测试方法:
可以帮助发现性能瓶颈,并及时采取措施来优化数据库性能。
序号 | 测试方法 | 描述 |
---|---|---|
1 | 基准测试(Benchmark Testing) | ①. 通过运行预定义的测试项目来测量数据库性能的方法 ②. 基准测试适用于比较不同数据库系统或不同硬件配置的性能 ③. 建议根据实际使用场景来选择最适合的基准测试工具,例如TPC-C、TPC-DS等 |
2 | 负载测试(Load Testing) | ①. 通过模拟实际业务场景下的访问量,来测试在高并发情况下的性能表现 ②. 可以使用压力测试工具,如JMeter等 |
3 | 实时监控(Real-time Monitoring) | ①. 可以使用实时监控工具来监控数据库的响应时间、CPU和内存使用情况、磁盘IO等性能指标 |
4 | 数据库执行计划(Execution Plan) | ①. 通过查看SQL语句的执行计划,确定查询的瓶颈在哪里 ②. 数据库自带的执行计划工具,如EXPLAIN命令 |
二、数据库处理数据的类型:
随着企业信息化的发展,数据量越来越庞大,对于数据分析和处理提出了更高的要求。在数据仓库中,联机分析处理(OLAP)和联机事务处理(OLTP)是常见的两种处理方式。
序号 | 技术指标 | OLTP | OLAP |
---|---|---|---|
1 | 应用类型 | 业务操作(应用) | 统计报表(分析) |
2 | 响应速度 | 快、短 | 一般 |
3 | 吞吐量 | 小 | 大 |
4 | 并发量 | 高 | 低 |
5 | 数据量规模 | 小 | 中大 |
6 | 场景 | 银行类、电子商务类的交易系统 | 数据仓库 |
- 联机事务处理(OLTP:On-line Transaction Processing),数据量少,DML频繁,并行事务处理多,但是要求处理时间短,一般用途或事务处理模板。
- 联机分析处理(OLAP:On-line Analytical Processing),数据量大,DML少,使用数据仓库模板。
数据仓库中的OLAP和OLTP是两种不同的数据处理方式,分别以数据分析和实时事务处理为核心。在实际应用中,我们针对不同的数据应用类型,可以选择不同的设计方案,以满足实际的业务需求。
三、基准测试中TPC-C、TPC-H、TPC-DS的区别:
序号 | 测试基准 | 数据应用类型 | 作用 | 测试工具 |
---|---|---|---|---|
1 | TPC-C | OLTP | ①. 用于在线事务处理(OLTP)数据库的性能测试 | sysbench测试工具就支持oltp测试 |
2 | TPC-H | OLAP | ①. 面向商品零售业的决策支持系统测试基准 ②. 定义了8张表,22个查询,遵循SQL92标准 |
http://TPC.org官方提供测试包 |
3 | TPC-DS | OLAP | ①. 数据仓库的表结构,采用星型、雪花型等多维数据模式 ②. 包含7张事实表,17张纬度表 ③. 与大数据的分析挖掘应用非常类似 ④. 测试案例都有很高的IO负载和CPU计算需求 |
http://TPC.org官方提供测试包 |
四、基准测试TPC-C压测:
1. 测试服务器型号:
2. 测试数据量:
40张表,每张表25000条记录,测试数据量为10.62G左右。

3. 安装sysbench:
Sysbench是一款基于LuaJIT的,模块化多线程基准测试工具,常用于数据库基准测试。
yum -y install epel-release yum -y install sysbench sysbench --version
压测脚本默认会安装在 /usr/share/sysbench 目录下,看看该目录的内容,除了oltp_common.lua是个公共模块,其它每个 lua 脚本都对应一个测试场景。
4. 开通MySQL数据库实例:
创建数据库实例后,并不能马上进行使用,需要大概等待6分钟左右才能进行使用。
5. 开通TDSQL-C MySQL Serverless实例:
创建数据库实例后,大概等待不到1分钟左右就能进行使用。
所以,我们选择的TDSQL-C MySQL Serverless的CCU算力是Min为4,Max为8。
对比MySQL与TDSQL-C MySQL Serverless基准测试的测试报告:
command是 sysbench 要执行的命令,支持的选项有:prepare、run、cleanup
命令参数:
序号 | 选项 | 功能 |
---|---|---|
1 | prepare | ①. 生成压测数据 ②. 执行测试前的预备操作,如 创建文件、填充数据等 |
2 | run | 运行压测 |
3 | cleanup | 清理数据 |
1. 只写场景 - oltp_read_only:
# 准备数据 sysbench --db-driver=mysql --mysql-host=rm-bp1i6ktwzqcs153neyo.mysql.rds.aliyuncs.com --mysql-port=3306 --mysql-user=root_123 --mysql-password=Testdb@123 --mysql-db=tpcc_test --table_size=25000 --tables=40 oltp_write_only prepare # 运行 workload sysbench --db-driver=mysql --mysql-host=rm-bp1i6ktwzqcs153neyo.mysql.rds.aliyuncs.com --mysql-port=3306 --mysql-user=root_123 --mysql-password=Testdb@123 --mysql-db=tpcc_test --table_size=25000 --tables=40 --events=0 --time=30 --threads=500 --percentile=95 --report-interval=1 oltp_write_only run # 清理数据 sysbench --db-driver=mysql --mysql-host=rm-bp1i6ktwzqcs153neyo.mysql.rds.aliyuncs.com --mysql-port=3306 --mysql-user=root_123 --mysql-password=Testdb@123 --mysql-db=tpcc_test --table_size=25000 --tables=40 oltp_write_only cleanup
测试结果对比:
压测数据结果解释:
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们。