计算磁盘IOPS的三个因素:
1、RAID类型的读写比
不同RAID类型的IOPS计算公式:
RAID类型 |
公式 |
RAID5、RAID3 |
Drive IOPS=Read IOPS + 4*Write IOPS |
RAID6 |
Drive IOPS=Read IOPS + 6*Write IOPS |
RAID1、RAID10 |
Drive IOPS=Read IOPS + 2*Write IOPS |
2、硬盘类型的IOPS值
不同磁盘类型的IOPS:
硬盘类型 |
IOPS |
FC 15K RPM |
180 |
FC 10K RPM |
140 |
SAS 15K RPM |
180 |
SAS 10K RPM |
150 |
SATA 10K RPM |
290 |
SATA 7.2K RPM |
80 |
SATA 5.4K RPM |
40 |
Flash drive |
2500 |
Device | Type | IOPS | Interface | Notes |
---|---|---|---|---|
7,200 rpm SATA drives | HDD | ~75-100 IOPS[2] | SATA 3 Gbit/s | |
10,000 rpm SATA drives | HDD | ~125-150 IOPS[2] | SATA 3 Gbit/s | |
10,000 rpm SAS drives | HDD | ~140 IOPS[2] | SAS | |
15,000 rpm SAS drives | HDD | ~175-210 IOPS[2] | SAS |
3、具体业务系统的读写比
二、案例
1) 业务需求: 10TB 的FC 15K RPM存储空间,满足6000 IOPS,计算RAID5,RAID10分别需要多少块硬盘?
首先需要知道I/O中读操作与写操作所占的百分比。 假定6000 IOPS中读/写比是2:1
不同的RAID类型Drive 硬盘实际IOPS负载分别如下:
RAID10:(2/3)*6000+2*(1/3)*6000= 8000 IOPS
RAID5:(2/3)*6000+4*(1/3)*6000=12000 IOPS
参照不同硬盘类型的IOPS值,换算出需要多少块盘:
RAID10:8000 /180 = 45块
RAID5:12000/180 =67块
2) 一个RAID5,是由5块500G 10K RPM的FC盘组成,换算出该RAID支持的最大IOPS以及能够给前端应用提供的IOPS?
首先10K RPM的FC盘,单块盘的IOPS为140,5块盘最大IOPS值为700。
假设读写比为2:1,能够提供给前端应用的IOPS为:
(2/3)*X+4*(1/3)*X = 700
2*X = 700
X=350
能够提供给前端应用的IOPS为350。
(Input/Output Operations Per Second),即每秒进行读写(I/O)操作的次数 越高表示读(写)数据越快。 不能设置,是出厂就已经定了的。