【工具】TPCC-MySQL 测试结果详解

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: TPCC-MySQL输出结果详解前面的一篇文章介绍了测试工具tpcc-mysql的安装与使用,奈何网上基本没有对于tpcc-mysql 结果的分析,本文介绍如何对测试结果进行分析:一 测试例子[root@rac1 tpcc-mysql]# t...
TPCC-MySQL输出结果详解
前面的一篇文章介绍了测试工具tpcc-mysql的安装与使用,奈何网上基本没有对于tpcc-mysql 结果的分析,本文介绍如何对测试结果进行分析:
一 测试例子
[root@rac1 tpcc-mysql]# tpcc_start  -hlocalhost  -d tpcc  -u root  -p '' -w 5  -c  5  -r 120   -l  300 -f tpcc_mysql_20130403.xls
***************************************
*** ###easy### TPC-C Load Generator ***
***************************************
option h with value 'localhost'
option d with value 'tpcc'
option u with value 'root'
option p with value ''
option w with value '5'
option c with value '5'
option r with value '120'
option l with value '300'
option f with value 'tpcc_mysql_20130403.xls'
     [server]: localhost
     [port]: 3306
     [DBname]: tpcc
       [user]: root
       [pass]: 
  [warehouse]: 5
 [connection]: 5
     [rampup]: 120 (sec.)
    [measure]: 300 (sec.)
-----以上部分可以忽略,有不懂的地方请参考前文的介绍。
RAMP-UP TIME.(120 sec.)  --热身时间

MEASURING START.

  10, 861(0):1.544|2.791, 858(0):0.471|1.265, 86(0):0.245|0.500, 87(0):2.102|3.095, 86(0):5.127|11.375
  20, 826(0):1.419|1.681, 826(0):0.418|0.637, 83(0):0.174|0.181, 82(0):1.975|2.239, 82(0):4.447|4.848
  30, 848(0):1.463|2.296, 850(0):0.422|0.943, 85(0):0.180|0.201, 85(0):1.865|2.174, 85(0):4.267|8.545
  40, 802(0):1.518|2.436, 802(0):0.497|0.820, 80(0):0.224|0.344, 81(0):1.925|2.115, 81(0):4.373|4.886
  50, 851(0):1.678|3.510, 854(0):0.483|0.590, 85(0):0.234|0.295, 85(0):1.832|1.903, 85(0):6.480|8.878
  60, 855(0):1.457|1.889, 851(0):0.456|0.741, 85(0):0.205|0.230, 84(0):2.123|2.281, 85(0):4.648|10.951
  70, 843(0):1.474|1.752, 847(0):0.447|0.781, 85(0):0.228|0.244, 86(0):2.045|2.058, 85(0):4.357|4.808
  80, 838(0):1.471|1.737, 835(0):0.447|0.769, 84(0):0.176|0.247, 84(0):1.856|1.988, 84(0):4.054|4.336
  90, 820(0):1.499|2.230, 821(0):0.540|1.114, 82(0):0.221|0.260, 81(0):2.112|2.177, 81(0):4.485|4.582
 100, 785(0):1.504|2.217, 783(0):0.426|0.912, 78(0):0.188|0.189, 78(0):2.010|2.227, 79(0):4.280|4.862
 110, 893(0):1.449|2.576, 891(0):0.444|0.732, 89(0):0.183|0.187, 89(0):1.976|1.978, 89(0):5.972|6.259
 120, 838(0):1.482|1.818, 840(0):0.480|0.802, 84(0):0.307|0.333, 84(0):1.887|2.657, 84(0):4.079|4.105
......
 210, 832(0):1.464|2.587, 832(0):0.496|0.954, 83(0):0.246|0.371, 85(0):2.055|3.083, 84(0):6.794|10.487
 220, 825(0):1.493|1.906, 829(0):0.479|0.864, 83(0):0.258|0.294, 83(0):1.891|2.111, 83(0):4.154|8.172
 230, 810(0):1.512|2.304, 810(0):0.478|0.605, 80(0):0.207|0.226, 78(0):1.965|2.032, 81(0):4.192|4.499
 240, 879(0):1.489|1.889, 873(0):0.477|1.096, 89(0):0.196|0.199, 89(0):1.985|2.005, 88(0):6.170|6.262
 250, 859(0):1.388|1.772, 859(0):0.417|0.689, 86(0):0.260|0.278, 86(0):1.787|1.833, 86(0):4.062|5.333
 260, 789(0):1.517|2.585, 793(0):0.523|0.764, 78(0):0.211|0.343, 78(0):1.683|1.721, 79(0):4.182|9.561
 270, 821(0):1.463|2.214, 818(0):0.415|0.653, 83(0):0.236|0.243, 83(0):1.739|2.034, 81(0):4.482|5.035
 280, 748(0):1.519|2.312, 752(0):0.463|0.892, 74(0):0.185|0.316, 76(0):1.818|2.107, 75(0):4.247|4.303
 290, 834(0):1.514|2.821, 833(0):0.440|0.687, 84(0):0.278|0.287, 82(0):1.947|2.096, 83(0):4.184|4.466
 300, 793(0):1.583|2.225, 793(0):0.474|0.860, 79(0):0.193|0.200, 80(0):2.006|2.111, 80(0):4.433|4.553

STOPPING THREADS.....

  [0] sc:24839  lt:0  rt:0  fl:0 
  [1] sc:24839  lt:0  rt:0  fl:0 
  [2] sc:2484  lt:0  rt:0  fl:0 
  [3] sc:2485  lt:0  rt:0  fl:0 
  [4] sc:2484  lt:0  rt:0  fl:0 
 in 300 sec.

  [0] sc:24839  lt:0  rt:0  fl:0 
  [1] sc:24839  lt:0  rt:0  fl:0 
  [2] sc:2484  lt:0  rt:0  fl:0 
  [3] sc:2485  lt:0  rt:0  fl:0 
  [4] sc:2484  lt:0  rt:0  fl:0 

(all must be [OK])
 [transaction percentage]
        Payment: 43.48% (>=43.0%) [OK]
   Order-Status: 4.35% (>= 4.0%) [OK]
       Delivery: 4.35% (>= 4.0%) [OK]
    Stock-Level: 4.35% (>= 4.0%) [OK]
 [response time (at least 90% passed)]
      New-Order: 100.00%  [OK]
        Payment: 100.00%  [OK]
   Order-Status: 100.00%  [OK]
       Delivery: 100.00%  [OK]
    Stock-Level: 100.00%  [OK]

                 4967.800 TpmC
结果分析:                 
TPCC-MySQL输出结果包括五个业务逻辑,这五个业务逻辑构成了TPCC-MySQL测试的整个事务处理过程。
具体如下所示:
New-Order       :新订单
Payment         :支付
Order-Status    :订单查询
Delivery        :发货
Stock-Level     :库存

预定义变量:
为了能够清晰的说明以下内容,首先定义一些变量,便于以下的计算和说明。具体如下所示:
success = 执行成功的记录数
late = 执行延迟的记录数
pre_success=上一次执行成功的记录数
pre_late =  上一次执行失败的记录数

late定义:
根据不同的业务,late的定义也不同,五种业务逻辑分别对操作延迟定义的界限值如下所示:
New-Order       5ms
Payment         5ms
Order-Status    5ms
Delivery        80ms
Stock-Level     20ms

计算:
   根据以上定义的变量,计算相应字段的结果和说明相应字段的含义。
1、时间间隔内成功的事务(包括成功和延迟的事务)  :sl=success+late-pre_success-pre_late
2、时间间隔内延迟的事务                        :l=late-pre_late
3、时间间隔内前90%记录(实际为99%)的平均 rt     :rt90
4、时间间隔内最大的rt                          :max_rt

实例分析:
根据输出结果,根据以上计算和说明内容,对未说明的部分分析如下:
Count     New-Order           Payment        Order-Status         Delivery        Stock-Level
     sl(l):rt90|max_rt  sl(l):rt90|max_rt  sl(l):rt90|max_rt  sl(l):rt90|max_rt  sl(l):rt90|max_rt
 #,      #(#):#|#,          #(#):#|#,          #(#):#|#,          #(#):#|#,          #(#):#|#
 
 10, 861(0):1.544|2.791, 858(0):0.471|1.265, 86(0):0.245|0.500, 87(0):2.102|3.095, 86(0):5.127|11.375

上述结果标明 新订单 时间间隔内成功的事务数861个,延迟事务0个,90%的rt 小于1.54ms  最高的rt 2.791ms 
             支付     成功的事务数858个,延迟事务0个,90%的rt是在0.471ms 最高的rt在1.265ms
             订单查询 成功的事务数86个,延迟事务0个,  90%的rt是在0.245ms 最高的rt在0.500ms
             发货     成功的事务数87个,延迟事务0个,90%的rt是在2.102ms 最高的rt在3.095ms
             库存     成功的事务数86个,延迟事务0个,90%的rt是在5.127ms 最高的rt在11.375ms
通常对mysql进行测试的同时,我们也要对整个服务器(一般是磁盘iops)进行信息统计收集,做出图表以便后期的分析。             
参考:
1、TPCC-MySQL源码
注 tpcc-mysql 结果分析部分感谢 子谅 同学 提供。
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
30天前
|
Java 测试技术 数据安全/隐私保护
软件测试中的自动化策略与工具应用
在软件开发的快速迭代中,自动化测试以其高效、稳定的特点成为了质量保证的重要手段。本文将深入探讨自动化测试的核心概念、常见工具的应用,以及如何设计有效的自动化测试策略,旨在为读者提供一套完整的自动化测试解决方案,帮助团队提升测试效率和软件质量。
|
23天前
|
Web App开发 IDE 测试技术
Selenium:强大的 Web 自动化测试工具
Selenium 是一款强大的 Web 自动化测试工具,包括 Selenium IDE、WebDriver 和 Grid 三大组件,支持多种编程语言和跨平台操作。它能有效提高测试效率,解决跨浏览器兼容性问题,进行性能测试和数据驱动测试,尽管存在学习曲线较陡、不稳定等缺点,但其优势明显,是自动化测试领域的首选工具。
133 17
Selenium:强大的 Web 自动化测试工具
|
15天前
|
SQL 关系型数据库 MySQL
MySQL 窗口函数详解:分析性查询的强大工具
MySQL 窗口函数从 8.0 版本开始支持,提供了一种灵活的方式处理 SQL 查询中的数据。无需分组即可对行集进行分析,常用于计算排名、累计和、移动平均值等。基本语法包括 `function_name([arguments]) OVER ([PARTITION BY columns] [ORDER BY columns] [frame_clause])`,常见函数有 `ROW_NUMBER()`, `RANK()`, `DENSE_RANK()`, `SUM()`, `AVG()` 等。窗口框架定义了计算聚合值时应包含的行。适用于复杂数据操作和分析报告。
57 11
|
2月前
|
机器学习/深度学习 人工智能 算法
BALROG:基准测试工具,用于评估 LLMs 和 VLMs 在复杂动态环境中的推理能力
BALROG 是一款用于评估大型语言模型(LLMs)和视觉语言模型(VLMs)在复杂动态环境中推理能力的基准测试工具。它通过一系列挑战性的游戏环境,如 NetHack,测试模型的规划、空间推理和探索能力。BALROG 提供了一个开放且细粒度的评估框架,推动了自主代理研究的进展。
44 3
BALROG:基准测试工具,用于评估 LLMs 和 VLMs 在复杂动态环境中的推理能力
|
2月前
|
监控 测试技术 开发工具
移动端性能测试工具
移动端性能测试工具
53 2
|
2月前
|
安全 前端开发 测试技术
如何选择合适的自动化安全测试工具
选择合适的自动化安全测试工具需考虑多个因素,包括项目需求、测试目标、系统类型和技术栈,工具的功能特性、市场评价、成本和许可,以及集成性、误报率、社区支持、易用性和安全性。综合评估这些因素,可确保所选工具满足项目需求和团队能力。
|
2月前
|
安全 网络协议 关系型数据库
最好用的17个渗透测试工具
渗透测试是安全人员为防止恶意黑客利用系统漏洞而进行的操作。本文介绍了17款业内常用的渗透测试工具,涵盖网络发现、无线评估、Web应用测试、SQL注入等多个领域,包括Nmap、Aircrack-ng、Burp Suite、OWASP ZAP等,既有免费开源工具,也有付费专业软件,适用于不同需求的安全专家。
208 2
|
2月前
|
监控 网络协议 Java
一些适合性能测试脚本编写和维护的工具
一些适合性能测试脚本编写和维护的工具
|
2月前
|
关系型数据库 MySQL 测试技术
【赵渝强老师】MySQL的基准测试与sysbench
本文介绍了MySQL数据库的基准测试及其重要性,并详细讲解了如何使用sysbench工具进行测试。内容涵盖sysbench的安装、基本使用方法,以及具体测试MySQL数据库的步骤,包括创建测试数据库、准备测试数据、执行测试和清理测试数据。通过这些步骤,可以帮助读者掌握如何有效地评估MySQL数据库的性能。
|
3月前
|
Java 关系型数据库 MySQL
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建
这篇文章是关于自动化测试项目实战笔记,涵盖了JDK、Tomcat、MySQL、Jpress环境的安装和搭建过程,以及测试用例和常见问题总结。
64 1
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建