Maximising disk I/O performance - the benefits of SASFrom STORAGE Magazine
Vol 6, Issue 3 - April 2006 Two primary metrics of storage subsystem performance are data throughput and I/O rate. Data throughput is typically stated in terms of MB/s and measures the maximum sustained data rate. Usually, maximum data rates are seen with sequential data streams that are either entirely Read or entirely Write operations, and employ data block sizes of 64KB or larger. I/O rate is the maximum number of I/Os the system can complete per second. Maximum I/O rates are usually seen with sequential data streams of either Read or Write operations, and have data block sizes of 512B, a single disk sector. Many of the I/O operations from user applications are random, in which requests for data may jump around to different locations on the disk. Random I/O will never occur at the same throughput levels as sequential I/O, since a random I/O involves moving the disk head (seek time), waiting on the disk platter to spin to the right location (rotational latency) in addition to the time required to move the data. Data caches on disk drives, in RAID controllers, and in the file system can mitigate the effects of random addressing, but cannot completely eliminate them. Spreading a data volume across multiple disks and using only a portion of the disk for storage is a common technique for increasing random I/O throughput. SAS and SATA, with their increased connectivity, permit the use of volumes that are larger than with parallel SCSI and potentially have higher random throughput performance. The I/O solution with the highest sequential data throughput will offer the best chance of supporting the highest overall I/O throughput when random and sequential I/O are both considered. For performance planning, it is therefore preferable to ensure that the storage subsystem has sufficient sequential bandwidth and connectivity before considering methods to improve random throughput. SAS and SATA interfaces and disk drives have been in development laboratories for long enough that system developers have acquired a good understanding of their capability in a variety of storage configurations. Throughput values used in this article are measured from best-in-class solutions. These values can be used as a basis for planning storage configurations to meet specific application requirements. We cannot anticipate all the requirements, but we can provide the building blocks upon which you can base your own performance calculations. Parallel vs. serial disk performance In most cases, Write throughput is very close to the Read throughput limit
for sequential I/Os. Of course, I/Os going to RAID volumes may be much slower
for Write, if parity or other redundant data techniques are used. In this
article, we focus on Read throughput since it typically sets a higher throughput
limit. There are, of course, some PCI Express Ultra320 adapters that are available,
but they all use controllers with a native PCI-X connection. So In the example offered, the minimum number of disks needed to achieve a given throughput is given, based upon the per-disk values in Table 1. Currently, enterprise-class disks are offered in two form factors. The form
factor has a significant impact on maximum sustained data throughput. For
Ultra320 and SAS, a 3.5" disk will typically support 90MB/s sustained
throughput. There is some variation between disks from different manufacturers,
and also depending upon which part of the disk surface is tested, but this is a
typical value useful for planning. A 2.5" Ultra320 or SAS disk will support
60MB/s sustained throughput. When we look at SATA disks, the values are lower: a
3.5" SATA disk will support around 60MB/s sustained throughput, while 2.5" disks
support up to 45MB/s. These throughput numbers assume a sequential data stream,
and are not significantly affected by spindle speed. For random I/Os, the
supported data rate is entirely different, and is driven by rotational speed,
stroke of the disk (amount of the disk capacity that is configured for the
volume), I/O size and number of queued I/Os. However, the sustained sequential
throughput sets the upper bound of what can be expected from each disk. The new serial SCSI interfaces are at the beginning of their development
cycle, and will grow in terms of connectivity and performance over the next
several years. Standards are already being developed for 6Gb/s SAS and there are
plans for extending it to 12Gb/s. Some SATA solutions are emerging that
implement SATA II with a 3Gb/s serial link rate. SATA configurations supporting
more than 1.0GB/s are expected soon. Extending the capability of SAS and SATA
with management utilities, expanders, port multipliers, and faster and higher
capacity disks is also occurring. SAS and SATA will continue to develop, with
increases in performance, connectivity and management capability. This article has sought to demonstrate the limitations of the best parallel SCSI storage interface, Ultra320, and how the emerging serial SCSI products are allowing system developers and users to increase performance, connectivity and availability well beyond the levels set by the Ultra320 standard. Those increases and the additional connectivity options allow optimisation of a storage subsystem, either to meet a specific current requirement or provide room for expansion to meet future performance and capacity goals. The data presented here seeks to illustrate how the new SAS and SATA
interfaces truly do offer unprecedented performance, connectivity and capacity
flexibility. |
|
The products referenced in this site are
provided by parties other than BTC. BTC makes no representations regarding
either the products or any information about the products. Any questions,
complaints, or claims regarding the products must be directed to the appropriate
manufacturer or vendor. Click here for usage terms
and conditions.
©2006 Business and Technical Communications Ltd. All rights
reserved. |