在做db基準(zhǔn)測試的時(shí)候,qps,tps 是衡量數(shù)據(jù)庫性能的關(guān)鍵指標(biāo)。本文比較了網(wǎng)上的兩種計(jì)算方式。先來了解一下相關(guān)概念。
概念介紹:
在對數(shù)據(jù)庫的性能監(jiān)控上經(jīng)常會(huì)提到QPS和TPS這兩個(gè)名詞,下面就分別簡單的分享一下關(guān)于MySQL數(shù)據(jù)庫中的QPS和TPS的意義和計(jì)算方法。
1 QPS: 每秒Query 量,這里的QPS 是指MySQL Server 每秒執(zhí)行的Query總量,計(jì)算方法如下:
Questions = SHOW GLOBAL STATUS LIKE 'Questions'; Uptime = SHOW GLOBAL STATUS LIKE 'Uptime'; QPS=Questions/Uptime
2 TPS: 每秒事務(wù)量,通過以下方式來得到客戶端應(yīng)用程序所請求的 TPS 值,計(jì)算方法如下:
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),即每秒進(jìn)行讀寫(I/O)操作的次數(shù),多用于數(shù)據(jù)庫等場合,衡量隨機(jī)訪問的性能。
存儲端的IOPS性能和主機(jī)端的IO是不同的,IOPS是指存儲每秒可接受多少次主機(jī)發(fā)出的訪問,主機(jī)的一次IO需要多次訪問存儲才可以完成。例如,主機(jī)寫入一個(gè)最小的數(shù)據(jù)塊,也要經(jīng)過“發(fā)送寫入請求、寫入數(shù)據(jù)、收到寫入確認(rèn)”等三個(gè)步驟,也就是3個(gè)存儲端訪問。
IOPS的測試benchmark工具主要有Iometer, IoZone, FIO等,可以綜合用于測試磁盤在不同情形下的IOPS。對于應(yīng)用系統(tǒng),需要首先確定數(shù)據(jù)的負(fù)載特征,然后選擇合理的IOPS指標(biāo)進(jìn)行測量和對比分析,據(jù)此選擇合適的存儲介質(zhì)和軟件系統(tǒng)。
Questions 是記錄了從mysqld啟動(dòng)以來所有的select,dml 次數(shù)包括show 命令的查詢的次數(shù)。這樣多少有失準(zhǔn)確性,比如很多數(shù)據(jù)庫有監(jiān)控系統(tǒng)在運(yùn)行,每5秒對數(shù)據(jù)庫進(jìn)行一次show 查詢來獲取當(dāng)前數(shù)據(jù)庫的狀態(tài),而這些查詢就被記錄到QPS,TPS統(tǒng)計(jì)中,造成一定的"數(shù)據(jù)污染".
如果數(shù)據(jù)庫中存在比較多的myisam表,則計(jì)算還是questions 比較合適。
如果數(shù)據(jù)庫中存在比較多的innodb表,則計(jì)算以com_*數(shù)據(jù)來源比較合適。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
標(biāo)簽:安徽 嘉峪關(guān) 洛陽 拉薩 葫蘆島 吐魯番 甘南
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Mysql數(shù)據(jù)庫的QPS和TPS的意義和計(jì)算方法》,本文關(guān)鍵詞 Mysql,數(shù)據(jù)庫,的,QPS,和,TPS,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。