Mary Shelly's classic gothic horror novel was about a monster, assembled from human parts, brought to life by the magic of a lighting bolt.
We've seen a fair amount of frankenstorage in the market already, but will we see more?
And, more importantly, how does it stack up to more - ummm -- traditional approaches?
There are several array controllers sold as storage virtualization devices these days -- HDS, IBM and NetApp spring to mind.
The original value proposition had a small bit of merit -- take your old, stranded storage, add the virtualization thingie, and hopefully breath a bit of new life into your existing, tired storage.
I continue have my reservations, but I've met enough customers with interesting philosophies on depreciating IT assets, and can appreciate why some people might want to consider this approach.
But, interestingly enough, there's been a slow creep to positioning this as brand new storage.
And, when we're talking brand spankin' new, the rules change, don't they?
I think HDS was the first when they didn't have answer for low-cost SATA on the USP-V (DMX did, though). They'd simply say "buy a cheap SATA array, and plug it in, if that's what you want".
Then IBM fell into the same groove over time, proposing combinations of smaller arrays lashed together with an SVC when a larger config was needed, and the 8000 (or, more lately XIV) was deemed unacceptable for one reason or another. Not to mention last summer's science experiment with flash that delivered one mill-yun IOPs.
And, most recently, NetApp did their interpretation of frankenstorage when they announced a lash-up with TMS's RamSan-500 to tick the box that, yes, they had a flash story to tell. And yes, they did it their way.
HP, so far, has refrained from this sort of thing. But, given they've picked up a storage virtualization technology recently, I wouldn't count them out.
So, What's Going On Here?
It's pretty simple when you think about it.
There's an incredible wide array of storage media available today, everything from uber-fast EFDs to fast FC drives, SAS, SATA, not to mention useful features like spin-down.
If you design and build arrays for a living, it's mighty inconvenient when the industry comes up with a new style of storage media that customers might want, like flash or SATA drives that spin down.
Array redesigns are very expensive propositions. Only EMC can really afford to do all that design, integration and qualification work -- and offer it all in a single, integrated array.
So it appears that more and more storage array vendors who offer the same technology as a storage virtualization controller are taking the easy way out -- they're offering a frankenstorage alternative.
They can say "yes" to their customers, so to speak, and at very low R+D cost. And when the next array redesign comes around in a few years, maybe they can take a look at native support.
Comparing Frankenstorage To Integrated Approaches
So, given that we've got a few of these in the market, and likely more coming, it's probably worthwhile to step back and view these sorts of approaches from a customer perspective, rather than a vendor's view.
Frankenstorage Can Cost More
At its most simplistic level, you're talking a separate storage array, power, cooling, processors, memory, etc. You're paying for separate maintenance, and maybe software as well. You're consuming more power, generating more heat and consuming more space than an integrated approach.
You also lose the granularity of mixing and matching in small amounts, especially important for things like flash.
Frankenstorage Can Be More Difficult To Manage
Let's face it, there's more things with management screens that don't talk together. Things like provisioning, or reconfiguration, or even tracking down performance issues have yet another layer to deal with.
Frankenstorage Can Be Harder To Support
Who do you call when there's a problem? The virtualization controller vendor, or the storage array vendor who's behind it? And how quickly cant they fix it?
Answer -- it depends. More often, you'll call the virtualization vendor, who'll do their best, and then call the underlying array vendor, who'll take a look at it ...
Ditto for the question of what's qualified, what's not qualified, who does the qualification, etc. It's not a straightforward situation, is it?
And I'm not even going to get started about how things like error propagation works (or, more specifically, doesn't work) in these sorts of configs.
So Why Do People Buy Frankenstorage?
I don't think anyone really prefers this kind of approach -- I think they're sort of forced into it by their vendor. They've already got a big investment in the vendor's kit, so they hold their nose, and move forward.
Hard to think as this sort of approach as optimal, though.
Will We See More Of This?
Sadly, I think so.
I think we've only begun to see the first round of flash-oriented storage mashups. And, as spin-down of big SATA drives gets more popular, I'm sure we'll see more behind-the-virtualization-controller market offerings with things such as Copan, perhaps.
How do we stop these monstrosities?
That's up to customers, isn't it? But even if customers refuse to buy, I don't think you'll see them die.
They're just too attractive to the vendors who just have to have a story -- any story -- to stay in the game.
And, so, just like the original Frankenstein, we'll probably see frankenstorage in the market long after it should rightfully be dead and buried.
Update on Feb 09
After the above post, I weathered a storm of criticism in the blogosphere.
"How can EMC, with its diverse portfolio, ever say anything like this?" many offered. "Pot calling kettle black!" opined several, referring to products such as the NX4 and the EDL. "And what about Invista?", referring to the heterogenous nature of our storage virtualization product.
All sorts of strong reactions -- but not a single reply to the specific issues I raised here. However, a few people in the blogosphere have some pretty colorful names for me.
So, let's try it again, but put differently:
When considering the broad range of storage media sevice levels available today (flash, FC, SATA, spin-down, etc.) what's the best way to offer these media choices in an array?
Is the answer (a) combine smaller arrays from different vendors together behind a virtualization head, or (b) invest the time and effort to build arrays that can directly support all of these media types?
Would anyone like to try a cogent response to the question posed, please?
Many thanks ...