1How to build a SAN - RAID Performance When deciding on a SAN storage implementation there is today a significant void between end-users and vendors in ensuring that the best set of products is chosen for a specific task. Vendor User Divide End-users typically require real-life performance statistics to ensure the system has the ability to perform at the required rate and ensure it can expand performance to acceptable levels. They also want to establish what steps they need to make to fine-tune their system, in order to get the greatest benefit from it. By contrast, the vendors aim to show the best figures that they can possibly squeeze out of their products. The result of this is that the end-user is frequently left confused. As a result, more often than not, it is left to value-added distributors, resellers and/or system integrators to correctly match product with customer need, and offer tips on fine-tuning. A SAN will generally use a RAID array and its performance is crucial to the SAN s performance. The type of disk Serial ATA (SATA) or Fibre Channel is important but equally so is the organisation of the data in terms of block size and the need either for maximal I/Os per second (IOps) or the most megabytes per second throughput (MB/s) RAID Performance The main consideration when looking at a RAID system s performance is the type of data to be stored and retrieved from the RAID array. You cannot for example have the highest MB/s and the highest IOps from the same system at the same time: one is achieved at the expense of the other and, as usual, the most appropriate balance in each individual case is likely to be somewhere in- between. RAID levels have an effect on performance and this is both well documented and reasonably well understood by the end-user community. However, block size, random/sequential data type and read/write requirements have a much deeper and more dramatic effect on RAID performance. Untitled Document 2 Figure 1. RAID read performance. The diagrams in figure 1 demonstrate the difference on reading data between two RAID systems, each containing 16 drives in a 4x 4 Drive RAID 0 configuration. One unit contained 10K Fibre Channel (FC) drives and the other 7200rpm Serial ATA (SATA) drives. The RAID units were from the same RAID manufacturer. It is clear to see that where the requirement is to read sequential data, the SATA solution holds its own very well against the FC solution - and in some cases (sequential IO) actually outperforms its FC counterpart. However, if the data type is Random Read, a much greater difference in favour of Fibre Channel is seen. The charts also clearly indicate that choosing the correct block size (if this is indeed an option in the client environment) has a major effect on what performance can be achieved. In general, the smaller the block size you use the greater IO you will achieve, but to the detriment of the MB/s. A large block size, by contrast, has the opposite effect. Sequential Read (MBps)010020030040050060070048Block SizeSATA Seq reads MbsFC Seq reads MbsSequential Read (IOps)0100002000030000400005000060000700008000048Block SizeSATA Seq reads IO'sFC Seq reads IO'sRandom Read (MBps)05010015020025030035040048Block SizeSATA Ran reads MbsFC Ran reads MbsRandom Read IOps02000400060008000100001200048Block SizeSATA Ran reads IO'sFC Ran reads IO'sUntitled Document 3 Figure 2. RAID write performance. If we look at the write performance of the same unit (figure 2), it is noticeable that the FC unit has a much greater performance bandwidth than its SATA counterpart. However, block size affects the performance in a similar manner to that of the read performance. The conclusion is clear. For write-intensive environments Fibre Channel-connected drives perform better. For read-intensive environments with sequential data SATA drives can be used to provide Fibre Channel performance. They will most probably be less expensive than Fibre Channel disks. If the I/O read pattern is random then Fibre Channel delivers the best performance. Other Factors These factors all have a bearing on RAID performance, but this is not the end of the story, for ensuring a good queue depth is equally important for getting the anticipated performance from the RAID array. It is of absolutely no value spending money on a high performance RAID solution, if it is constantly waiting for the servers to give it the tasks of data read/write. Additionally cache size, write through/write back and port and controller load balancing can all have a dramatic effect on the solution s performance. So where does this increased level of complexity and choice leave the typical end-user? Sequential Writes MBps010020030040050060070048Block SizeSATA Seq w rites MbsFC Seq w rites MbsSequential Write IOps050001000015000200002481632641282565121024Block SizeSATA Seq w rites IO'sFC Seq w rites IO'sRandom Writes (MBps)010020030040050060048Block SizeSATA Ran w rites MbsFC Ran w rites MbsRandom Writes (IOps)01000200030004000500060007000800048Block SizeSATA Ran w rites IO'sFC Ran w rites IO'sUntitled Document 4As new technologies such as SBOD (Switched JBOD), SAS and SATA II drives are entered into the equation, the analysis of these results becomes a continuing, yet essential challenge, meaning that resellers, system integrators and value-added distributors have to become more expert at advising customers and helping the end-user understand what type of data they are dealing with in their environment. For customers, seeking the correct advice on the configuration of their RAID array is equally as important as the initial selection of the RAID device. Date: 11th June 2004. Author: Paul Hickingbotham, senior storage consultant, Hammer.