Configuring IBM Storwize V7000 and SVC for Optimal Performance Part 2

Configuring IBM Storwize V7000 and SVC for Optimal Performance Part 2

Thanks to everyone who responded to my Part 1 post, I'm amazed at how many people must read what I have to say! Based on the number of you that have either spoken to me in person, or emailed. I'm glad to be of some use

Anyway, part one seems to have thrown up quite a discussion. At the end of the day, RAID and of course the cache layers can do its best to make the IO that hits the disks as optimal as possible. However, in most cases the ultimate performance is going to be dictated by disks themselves.

I'm glad to say that FC-AL (Fibre Channel Arbitrated Loop) disks are pretty much dead. If any vendor tries to sell you a disk system using them, you need to think about what they are after - your money, or your money. I've discussed the disk attach technology at length with many customer over the last few years. I find it almost amusing, if it weren't for the "I told you so" feeling. Back in the late 90's when I first started at IBM, we were working on a technology called SSA - Serial Storage Architecture. The technology was a serial disk technology, with the concept of spatial reuse. You have to realise this was in the days before SAN's, where direct attached disks were king. SSA RAID brought you the technology to attach 2 to 8 servers with the same set of disks. It was a loop technology, but as soon as an I/O had been sent from one link to the next (a link was a connected between server and disk, disk to next disk in the loop etc) you could send another. No need for loop arbitration. Spacial reuse.

It may seem like I'm reminiscing here, but the reality is that we've gone through a few years of FC-AL where a single disk has to arbitrate (get control) of the loop to perform I/O. What happens if that disk gets control, then goes AWOL. How long do you wait? How do you recover? I've discussed in the past how we spent many hours working out how we could make a disk system using FC-AL that was as reliable as what we already had with SSA.

Some ten years later, here we are with SAS (Serial Attached SCSI) - back to a serial disk technology - and that's great. SAS is a tree topology, with inbuilt spacial reuse. Best of all, the disks themselves are leaves on the tree. So the controller is the trunk, expansion and cabling are branches, while the unreliable disk entities are the leaves on those branches. No longer can a single disk take down the whole network, you simply lose that leaf.

So how does this affect me you ask. Lets look at where we are now with SAS and Nearline-SAS.

Nearline SAS

Nearline as a term was originally used to describe tape, or in its true name "near-online". The term has been abused recently to describe the slower spinning, higher capacity HDD (hard-disk-drive) technologies. You can think of NL-SAS as essentially SATA drives, but dual ported, running server grade firmware and connecting to a SAS infrastructure.

Consumer grade SATA drives are the lowest grade commodity storage. In some cases still running at 5.4K RPM, but high capacity. 3TB+ However, drive speed is directly proportional to access latency. When it comes to a disk head reaching the data you need, there are two things.

Rotational latency. The time taken for the drive to rotate to the sector needed

Seek latency. The time taken to seek to the track within the radius of the disk platter.

The drive speed directly contributes to the time take (latency) to reach the data.

The other issue with consumer grade SATA disks is the interface options. A SATA drive only had one interface, or port. So you can only access it through one attached interface. NL-SAS drives basically combine the expense, slower rotational speed, and high density, but add the dual ported SAS interface. That is, you have two interfaces to the drive, allowing two control units (servers, storage heads etc) to talk to the drive at once. Now you can lose one control unit, but still have access to the device, but make use of the high capacity provided by the disk.

SAS 10K RPM

These are the middle of the road drive when it comes to enterprise disks. However, we recently have tested 1.2TB 10K RPM 2.5" drives. That's a hell of a lot of reasonably fast spinning disk capacity. In a 2U enclosure, that's almost 30TB spinning at 10K RPM. Or in a 42U rack, 600TB and 151,00 IOPs...

The main difference is that these are dual ported drives by definition and the disk platters and logic are aimed at enterprise systems. Firmware can contribute a big difference to the reliability and performance.

SAS 15K RPM

Top of the range spinning rust. 15K RPM, think about your car engine, if you have a diesel, you'll top out at 5-6000 RPM, a high performance petrol may make 7-8000 RPM - and of course the Wankel Rotary will keep going close to 10,000 RPM. But for a spinning platter, with the read and write heads managing to get and store your data with the medium spinning past at 15,0000 RPM - that's motorbike or F1 car territory!

Today's SFF (Small Form Factor) disks are reaching 600GB for a 15K RPM disk, but the performance is stunning (for HDDs).

SSD

Now throw everything I've said out the window. Solid State Drives are a new breed.

No rotation.

Truely random access

Built in LSA and write relocation

The latest disks we've been testing using eMLC and efficient algorithms are producing 50,000 IOPS - yes 100x a 15K RPM disk, and close to 500MB/s (2-3x) The bandwidth is close to saturating the 6Gbps drive interfaces - but 12Gbps SAS aint far away.

Consumer SSD

Its worth noting that there is a big different between Enterprise class SSD that we offer in SVC, DS8000, V7000 and those ~$100 SSD drives you can buy for your laptop/desktop. It really is a case of you get what you pay for. Most consumer SSD drives have little or now over-provisioing and much reduced wear-levelling / endurance capabilites. Performance too.

Performance wise, we'd normally expect a consumer SSD to provide ~5,000 iops but still about 3-400MB/s

Performance Comparison

Drive Type

Speed RPM

Capacities

IOPs

MB/s

Comments

Nearline SAS

7.2K RPM

1TB-3TB

100-150

80-100

High densiy - lowest performance

SAS

10K RPM

300GB-1.2TB

200-300

100-150

Average denisty - midrange performance

SAS

15K RPM

146GB-600GB

300-500

125-175

Lowest denisty - highest performance

Consumer SSD

n/a

32GB-1TB

1000-5000

100-500

All density - good performance - reliability? warranty 1year+???

Enterprise SSD

n/a

146GB-400GB

10,000-50,000

100-500

All density - high performance - guaranteed reliabilty 3-5year

The catch 22....

High capacity, low performance, high protection = even lower performance

One last point to consider, the lowest reliability drives, 7.2K NL-SAS high capacity, need the highest level of protection, RAID-6 which in itself has the lowest performance (6 ops per write) as per my part1 discussion... and of course the longest rebuild times... but maybe soon we can do something about dual parity raid rebuild times...