Mysql数据库的QPS和TPS的意义和计算方法
时间:2020-11-03 13:39 作者:admin
在做db基准测试的时候,qps,tps 是衡量数据库性能的关键指标。本文比较了网上的两种计算方式。先来了解一下相关概念。
概念介绍:
QPS:Queries Per Second 查询量/秒,是一台
服务器每秒能够相应的查询次数,是对一个特定的查询
服务器在规定时间内所处理查询量多少的衡量标准。 TPS : Transactions Per Second 是事务数/秒,是一台
数据库服务器在单位时间内处理的事务的个数。
在对数据库的性能监控上经常会提到QPS和TPS这两个名词,下面就分别简单的分享一下关于mysql/' target='_blank'>mysql数据库中的QPS和TPS的意义和计算方法。
1 QPS: 每秒Query 量,这里的QPS 是指MySQL Server 每秒执行的Query总量,计算方法如下:
Questions = SHOW GLOBAL STATUS LIKE 'Questions';Uptime = SHOW GLOBAL STATUS LIKE 'Uptime';QPS=Questions/Uptime
2 TPS: 每秒事务量,通过以下方式来得到客户端应用程序所请求的 TPS 值,计算方法如下:
Com_commit = SHOW GLOBAL STATUS LIKE 'Com_commit';Com_rollback = SHOW GLOBAL STATUS LIKE 'Com_rollback';Uptime = SHOW GLOBAL STATUS LIKE 'Uptime';TPS=(Com_commit + Com_rollback)/Uptime
IOPS:(Input/Output Operations Per Second),即每秒进行读写(I/O)操作的次数,多用于数据库等场合,衡量随机访问的性能。
存储端的IOPS性能和主机端的IO是不同的,IOPS是指存储每秒可接受多少次主机发出的访问,主机的一次IO需要多次访问存储才可以完成。例如,主机写入一个最小的数据块,也要经过“发送写入请求、写入数据、收到写入确认”等三个步骤,也就是3个存储端访问。
IOPS的测试benchmark工具主要有Iometer, IoZone, FIO等,可以综合用于测试磁盘在不同情形下的IOPS。对于应用系统,需要首先确定数据的负载特征,然后选择合理的IOPS指标进行测量和对比分析,据此选择合适的存储介质和软件系统。
Questions 是记录了从mysqld启动以来所有的select,dml 次数包括show 命令的查询的次数。这样多少有失准确性,比如很多数据库有监控系统在运行,每5秒对数据库进行一次show 查询来获取当前数据库的状态,而这些查询就被记录到QPS,TPS统计中,造成一定的"数据污染".
如果数据库中存在比较多的myisam表,则计算还是questions 比较合适。
如果数据库中存在比较多的innodb表,则计算以com_*数据来源比较合适。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接
(责任编辑:admin)