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

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介:
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)进行信息统计收集,做出图表以便后期的分析。 
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
22天前
|
测试技术 C语言
网站压力测试工具Siege图文详解
网站压力测试工具Siege图文详解
27 0
|
4天前
|
机器学习/深度学习 数据采集 人工智能
【专栏】利用AI辅助工具提高软件测试效率与准确性
【4月更文挑战第27天】本文探讨了AI在软件测试中的应用,如自动执行测试用例、识别缺陷和优化测试设计。AI辅助工具利用机器学习、自然语言处理和图像识别提高效率,但面临数据质量、模型解释性、维护更新及安全性挑战。未来,AI将更注重用户体验,提升透明度,并在保护隐私的同时,通过联邦学习等技术共享知识。AI在软件测试领域的前景广阔,但需解决现有挑战。
|
1天前
|
敏捷开发 监控 测试技术
探索自动化测试工具Selenium Grid的高效集成策略
【4月更文挑战第30天】在现代Web应用的快速迭代和持续部署中,测试自动化已成为确保产品质量的关键。Selenium Grid作为一款支持多种浏览器和操作系统的测试工具,提供了并行执行测试用例的能力,极大地提升了测试效率。本文将深入探讨如何高效地将Selenium Grid集成到现有的测试框架中,以及实施过程中的最佳实践,帮助团队最大化测试覆盖率,同时降低资源消耗。
|
1天前
|
中间件 测试技术 API
探索自动化测试工具的新边界:Selenium与Appium的集成实践
【4月更文挑战第30天】 随着移动应用和Web应用的不断融合,传统的自动化测试工具需要适应新的测试环境。本文将详细分析Selenium和Appium这两款流行的自动化测试工具的集成实践,探讨如何构建一个能够同时支持Web和移动端应用的自动化测试框架。通过对比两者的技术架构、功能特性以及在实际项目中的集成过程,我们旨在为读者提供一个清晰的指导,帮助他们在复杂的应用环境中实现高效、稳定的自动化测试流程。
|
2天前
|
机器学习/深度学习 人工智能 机器人
深入理解自动化测试:框架、工具与实践
【4月更文挑战第30天】 在现代软件开发周期中,自动化测试已成为确保产品质量和加速市场交付的关键环节。本文将探讨自动化测试的核心框架、常用工具以及实际应用的最佳实践,旨在为软件测试工程师提供深入的理解和有效的策略,以改进其自动化测试流程。我们将分析几种流行的测试自动化框架,包括Selenium、Appium和JUnit,并讨论如何根据项目需求选择适合的工具。此外,文中还将介绍持续集成(CI)环境下的自动化测试策略,以及如何通过测试结果分析和报告来优化测试过程。目标是帮助读者构建更健壮、更高效的自动化测试系统。
|
2天前
|
DataWorks NoSQL 关系型数据库
DataWorks操作报错合集之在使用 DataWorks 进行 MongoDB 同步时遇到了连通性测试失败,实例配置和 MongoDB 白名单配置均正确,且同 VPC 下 MySQL 可以成功连接并同步,但 MongoDB 却无法完成同样的操作如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
18 1
|
2天前
|
IDE 测试技术 持续交付
探索自动化测试工具Selenium的高效应用
【4月更文挑战第29天】 在快速迭代的软件开发过程中,高效的测试策略是确保产品质量的关键。本文将深入探讨如何利用自动化测试工具Selenium来提高软件测试的效率和准确性。通过介绍Selenium的核心功能、脚本编写技巧以及与持续集成环境的集成方法,我们旨在为读者提供一个全面的Selenium应用指南。此外,我们还将讨论常见的问题解决策略,并通过案例分析展示如何有效地运用Selenium进行复杂的Web应用测试。
|
3天前
|
Java 测试技术 数据库连接
软件测试中的自动化工具及其应用
传统的软件测试方法已经不能满足日益增长的软件开发需求,因此自动化测试工具应运而生。本文介绍了几种常用的自动化测试工具,并探讨了它们在软件测试中的应用及优势。
7 0
|
8天前
|
存储 SQL 关系型数据库
Mysqlslap性能测试MySQL三种存储引擎
Mysqlslap性能测试MySQL三种存储引擎
|
10天前
|
敏捷开发 Java 测试技术
探索自动化测试工具Selenium Grid的高效应用
【4月更文挑战第21天】 随着敏捷开发和持续集成的理念深入人心,自动化测试已成为软件开发过程中不可或缺的一环。本文将深入探讨如何利用Selenium Grid进行高效的自动化测试。通过分析其工作原理,搭建过程,以及在实际项目中的应用案例,揭示Selenium Grid在处理大规模并发测试中的潜力和优势。文章不仅提供了具体的操作步骤,还讨论了优化策略,帮助读者构建更加稳定和高效的自动化测试环境。