Iops(Input/output per second) is the input output per second (or read/write count), which is one of the main indicators to measure disk performance. Iops refers to the number of I/O requests that the system can process per second, i/O requests are generally read or write data operation requests. For applications with frequent random reads and writes, such as OLTP (online transaction processing), iops is a key indicator. Another important indicator isData throughput(Throughput) refers to the amount of data that can be successfully transferred per unit of time. For applications with a large number of sequential reads and writes, such as VOD (video on demand), more attention is given to throughput indicators.
A traditional disk is essentially a type of mechanical device, such as FC, SAS, and SATA disks, with a speed of 5400/7200/10 k/15 K rpm. The key factor affecting the disk is the disk service time, that is, the time it takes for the disk to complete an I/O request. It consists of three parts: Seeking time, rotation delay, and data transmission time.
Seek timeTseek refers to the time required to move the read/write head to the correct track. The shorter the tracing time, the faster I/O operations are. Currently, the average tracing time of a disk is generally 3-15 ms.
Rotation DelayTrotation refers to the time required for disk rotation to move the sector where the request data is located to the bottom of the read/write head. The rotation delay depends on the disk speed, which is usually expressed by 1/2 of the time required for disk rotation for one week. For example, the average rotation latency of a 7200 RPM disk is about 60*1000/7200/2 = 4.17 ms, while the average rotation latency of a 15000 rpm disk is about 2 ms.
Data transmission timeTtransfer refers to the time required to complete the data requested for transmission. It depends on the data transmission rate, and its value is equal to the data size divided by the data transmission rate. At present, IDE/ATA can reach 133 Mb/s, and sata ii can reach the interface data transmission rate of 300 MB/S. The data transmission time is usually far earlier than the first two parts.
Therefore, theoretically, the maximum iops of the disk can be calculated, that isIops = 1000 MS/(tseek + troatation ),Ignore the data transmission time. Assuming that the average physical tracing time of a disk is 3 ms, and the disk speed is, 10 K, and 15 K rpm, the theoretical maximum iops of the disk is,
Iops = 1000/(3 + 60000/7200/2) = 140
Iops = 1000/(3 + 60000/10000/2) = 167
Iops = 1000/(3 + 60000/15000/2) = 200
SSD is an electronic device that avoids the time spent on track finding and rotating traditional disks and greatly reduces the overhead of storage unit addressing. Therefore, the iops can be very high, it can reach tens of thousands or even hundreds of thousands. In actual measurement, iops values are affected by many factors, including I/O load characteristics (read/write ratio, order and random, number of working threads, queue depth, and data record size), system configuration, operating system, disk drive, and so on. Therefore, when comparing disk iops measurement, it must be performed under the same test benchmark, even in case of random uncertainty. In general, iops can be subdivided into the following indicators:
Toatal iops, Disk iops under mixed read/write and sequential random I/O load, which is the most consistent with the actual I/O situation, most applications focus on this indicator.
Random read iops, Iops at 100% random read load.
Random write iops, 100% iops under Random write load.
Sequential read iops, 100% iops for sequential load reading.
Sequential write iops, 100% iops in the case of sequential write load.
Iops testing benchmark tools mainly includeIometer,Iozone,FIOAnd can be used to test disk iops in different scenarios. For an application system, you must first determine the load characteristics of the data, then select appropriate iops indicators for measurement and comparative analysis, and then select the appropriate storage medium and software system. The following disk iops data comes from http://en.wikipedia.org/wiki/iops, which provides you with a basic reference.
Device |
Iops |
Interface |
Notes |
7200 rpm sata drives |
~ 90 iops |
SATA II |
|
10 k rpm sata drives, queue depth 1 |
~ 130 iops |
SATA II |
fio -readonly -name iops -rw=randread -bs=512 -runtime=20 -iodepth 1 -filename /dev/sda -ioengine libaio -direct=1 |
10 k rpm Serial Attached SCSI drives |
~ 140 iops |
SAS |
|
15 k rpm Serial Attached SCSI drives |
~ 180 iops |
SAS |
|
10 k rpm sata drives, queue depth 24 |
~ 290 iops |
SATA II |
fio -readonly -name iops -rw=randread -bs=512 -runtime=20 -iodepth 24 -filename /dev/sda -ioengine libaio -direct=1 |
Simple SLC SSD |
~ 400 iops |
SATA II |
|
Intel X25-M G2 (MLC; as of March 2010) |
~ 8,600 iops |
SATA II |
Intel's Data Sheet claims 6,600/8,600 iops (80 GB/160 GB version) and 35,000 iops for random 4kb writes and reads, respectively. |
Intel X25-E (SLC; as of March 2009) |
~ 5,000 iops |
SATA II |
Intel's Data Sheet claims 3,300 iops and 35,000 iops for writes and reads, respectively. 5,000 iops are measured for a mix. intel X25-E G1 has und 3 times higher iops compared to the intel X25-M G2. |
Ocz Z-drive e84, a PCI Express SLC solid state drive |
16,000 iops |
PCIe |
Maximum read/write speed of 800/750 Mbit/s ). |
G. Skill Phoenix Pro et. al. |
~ 20,000 iops |
SATA III |
SandForce-1200 based SSD Drives with enhanced firmware, States up to 50,000 iops, but real-world performance shows for all drives from different manufacturers ~ 25,000 iops for random read and ~ 15,000 iops for random write. |
Iodrive, a PCI-Express card with Flash |
140,000 read iops, 135,000 write iops |
PCIe |
|
Iodrive duo |
250,000 + iops |
PCIe |
|
Ddrdrive X1, a May 2009 PCI Express based solid-state drive |
300,000 + (512b random read iops) and 200,000 + (512b random write iops) |
PCIe |
|
Texas Memory System RamSan-20 |
120,000 + random read/write iops |
PCIe |
Inlude RAM cache and ultracapacitor to preserve the memory non-volatile |
Texas Memory System RamSan-630 Appliance |
1,000,000 + random read/write iops |
FC/InfiniBand |
|
Violin memory Appliance |
1,000,000 + random read/write iops |
Proprietary Interconnect |
|
Iodrive octal (single PCI Express Card) |
1,000,000 + random read/write iops |
PCIe |
|