磁碟IOPS(每秒讀寫次數)的計算方法與測量

2021-07-11 04:40:01 字數 1419 閱讀 9727

傳統磁碟本質上一種機械裝置,如fc,sas,sata磁碟,轉速通常為5400/7200/10k/15k rpm不等。影響磁碟的關鍵因素是磁碟服務時間,即磁碟完成乙個i/o請求所花費的時間,它由尋道時間、旋轉延遲和資料傳輸時間三部分構成。

尋道時間tseek是指將讀寫磁頭移動至正確的磁軌上所需要的時間。尋道時間越短,i/o操作越快,目前磁碟的平均尋道時間一般在3-15ms。

旋轉延遲trotation是指碟片旋轉將請求資料所在扇區移至讀寫磁頭下方所需要的時間。旋轉延遲取決於磁碟轉速,通常使用磁碟旋轉一周所需時間的1/2表示。比如,7200 rpm的磁碟平均旋轉延遲大約為60*1000/7200/2 = 4.17ms,而轉速為15000 rpm的磁碟其平均旋轉延遲約為2ms。

資料傳輸時間ttransfer是指完成傳輸所請求的資料所需要的時間,它取決於資料傳輸率,其值等於資料大小除以資料傳輸率。目前ide/ata能達到133mb/s,sata ii可達到300mb/s的介面資料傳輸率,資料傳輸時間通常遠小於前兩部分時間。

因此,理論上可以計算出磁碟的最大iops,即iops = 1000 ms/ (tseek + troatation),忽略資料傳輸時間。假設磁碟平均物理尋道時間為3ms, 磁碟轉速為7200,10k,15k rpm,則磁碟iops理論最大值分別為,

iops = 1000 / (3 + 60000/7200/2) = 140

iops = 1000 / (3 + 60000/10000/2) = 167

iops = 1000 / (3 + 60000/15000/2) = 200

固態硬碟ssd是一種電子裝置, 避免了傳統磁碟在尋道和旋轉上的時間花費,儲存單元定址開銷大大降低,因此iops可以非常高,能夠達到數萬甚至數十萬。實際測量中,iops數值會受到很多因素的影響,包括i/o負載特徵(讀寫比例,順序和隨機,工作執行緒數,佇列深度,資料記錄大小)、系統配置、作業系統、磁碟驅動等等。因此對比測量磁碟iops時,必須在同樣的測試基準下進行,即便如何也會產生一定的隨機不確定性。通常情況下,iops可細分為如下幾個指標:

toatal iops,混合讀寫和順序隨機i/o負載情況下的磁碟iops,這個與實際i/o情況最為相符,大多數應用關注此指標。

random read iops,100%隨機讀負載情況下的iops。

random write iops,100%隨機寫負載情況下的iops。

sequential read iops,100%順序負載讀情況下的iops。

sequential write iops,100%順序寫負載情況下的iops。

iops的測試benchmark工具主要有iometer, iozone, fio等,可以綜合用於測試磁碟在不同情形下的iops。對於應用系統,需要首先確定資料的負載特徵,然後選擇合理的iops指標進行測量和對比分析,據此選擇合適的儲存介質和軟體系統。下面的磁碟iops資料來自給大家乙個基本參考。

硬碟的讀寫原理:

磁碟IOPS的計算

計算磁碟iops的三個因素 1 raid型別的讀寫比 不同raid型別的iops計算公式 raid型別 公式 raid5 raid3 drive iops read iops 4 write iops raid6 drive iops read iops 6 write iops raid1 rai...

磁碟IOPS的計算

計算磁碟iops的三個因素 1 raid型別的讀寫比 不同raid型別的iops計算公式 raid型別 公式raid5 raid3 drive iops read iops 4 write iops raid6 drive iops read iops 6 write iops raid1 raid...

磁碟IOPS計算與測量

傳統磁碟本質上一種機械裝置,如fc,sas,sata磁碟,轉速通常為5400 7200 10k 15k rpm不等。影響磁碟的關鍵因素是磁碟服務時間,即磁碟完成乙個i o請求所花費的時間,它由尋道時間 旋轉延遲和資料傳輸時間三部分構成。尋道時間tseek是指將讀寫磁頭移動至正確的磁軌上所需要的時間。...