計算IOPS

lovestanford發表於2015-09-18


首先需要知道I/O中讀操作(Read)與寫操作(Write)所佔的百分比。然後透過下列公式,將主機的IOPS需求轉換成硬碟實際IOPS負載:
RAID型別 公式
RAID 5和3 Drive IOPS = Read IOPS + 4*Write IOPS
RAID 6 Drive IOPS = Read IOPS + 6*Write IOPS
RAID 1和1/0 Drive IOPS = Read IOPS + 2*Write IOPS


假定4500 IOPS中讀/寫比是2:1,則不同RAID型別Drive IOPS要求分別如下:

RAID 1/0: (2/3)*4500 + 2*(1/3)*4500 = 6000 IOPS

RAID 5: (2/3)*4500 + 4*(1/3)*4500 = 9000 IOPS

RAID 6: (2/3)*4500 + 6*(1/3)*4500 = 12000 IOPS

 

再參照下表中不同型別硬碟單塊IOPS引數,得出需要多少塊硬碟:

硬碟型別 IOPS
Fibre Channel 15k rpm 180
SAS 15k rpm 180
Fibre Channel 10k rpm 140
SATA 7.2k rpm 80
SATA 5.4k rpm 40
Flash drive 2500

 

假定選用FC 15K RPM硬碟,則:

RAID 1/0: 6000/180 = 34 塊

RAID 5: 9000/180 = 50 塊

RAID 6: 12000/180 = 67 塊

 

注:實際情況下還需考慮Vault Drivers (共5塊)以及Hot Spares (建議每30塊硬碟一個)。

 

最後,如果選用600GB FC硬碟來實現20TB可用空間,則RAID 1/0需要78塊,RAID 5需要42塊,具體計算方法參考:


IOPS計算方法

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

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

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

資料傳輸時間Ttransfer是指完成傳輸所請求的資料所需要的時間,它取決於資料傳輸率,其值等於資料大小除以資料傳輸率。目前IDE/ATA能達到133MB/s,SATAII可達到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指標進行測量和對比分析,據此選擇合適的儲存介質和軟體系統

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21754115/viewspace-1803437/,如需轉載,請註明出處,否則將追究法律責任。

相關文章