I have spent a lot of time lately talking with some of my coworkers, friends, etc. on the topic of wide striping. This topic keeps coming up since there are now a number of vendors selling storage arrays with SATA drives that claim to have “the same performance as fiber channel”. Some of the Sales folks I work with keep asking how we are supposed to dissuade people from that idea, or if it’s true. One of the prime offenders in this regard is IBM with their new XIV array. The XIV uses wide striping and SATA drives and they claim to have “enterprise performance” at a very low price point. But they aren’t the only ones; you have Dell telling people the same thing about their EqualLogic line of storage as well, and there are other too. For an excellent article about the XIV and its performance claims, take a look at http://thestorageanarchist.typepad.com/weblog/2009/01/1037-xiv-does-hitachi-math-with-roman-numbers.html.
What I usually tell them is that the statement is true; you can get fiber channel performance by striping across a large number of SATA drives. The only problem is that you have to give up a lot of usable disk space in order to keep it that way. A quick example usually illustrates the point quite well. Let’s say that for the sake of easy math the average application in your environment uses about 5TB of space (I’m sure some are a lot more, and some a lot less, but we are talking average here). Let’s also say that you need about 2,000 IOPS per application in order to maintain the 20ms max response time you need in order to meet the SLAs you have with your customers. Finally, let’s also assume that your SATA array has about 90TB of useable space using 180 750GB SATA drives and you can get about 20,000 IOPS in total from the array. So, let’s do some basic math here. That means that you can run about 10 applications at 5 TB apiece which will take up about 50TB. So, your array will perform well, right up until you cross the ½ full barrier. After that, performance will slowly decline as you add more application/data to the array.
So, what does this mean? It means that the cost per GB of these arrays is really about twice what the vendors would have you believe. OK, but considering how much cheaper SATA drives are than 15K fiber channel drives, that’s still OK, right? Sure, as long as you are willing to run your XIV at ½ capacity. In today’s’ economic climate, that’s going to be tough to do. I can just imagine the conversation between your typical CIO and his Storage Manager.
Storage Manager — “I need to buy some more disk space.”
CIO — “What are you talking about, you’re only at 50% used in theses capacity reports you send me and we didn’t budget for a storage expansion in the first year after purchase!”
Storage Manager — “Well, you know all that money we are saving by using SATA drives? Well, it means I can’t fill up the array; I have to add space once I reach 50% or performance will suffer.”
CIO — “So let performance suffer! We don’t have budget for more disk this year. Why didn’t you tell me this when you came to me with that ‘great idea’ of replacing our ‘enterprise’ arrays with a XIV?!?!”
Storage Manager — “Ahhh … ummmmm … gee, I didn’t know, IBM didn’t tell me! But we had some performance issues early on, and figured this out. Do you really want to tell the SAP folks that their response time is going to double over the next year?”
CIO — “WHAT! We can’t let that happen, we have an SLA with the SAP folks and my bonus is tied to keeping our SLAs! How could you let something like this happen! Maybe I should use the money for your raise to pay for the disks!”
Storage Manager — “Um, well, actually, we need to buy an entire new XIV, the one we have is already full.”
OK, enough fun, you get the idea … make sure you understand what wide striping really buys you and if you decide that the TCO and ROI make sense, make sure you communicate that up the management tree in the clearest possible terms. Look at the applications that you currently run, see how much space they require, but don’t base the sizing of your EqualLogic (see, I’m not just bashing the XIV) just on your space requirements. Base them more on your IOPS requirements. With SATA drives chances are pretty good that if you size for IOPS, you’ll have more than enough space.