Friday, March 6, 2009

The next assalt on storage arrays...

Chris Evans had an interesting post discussing the cost of enterprise storage. This post was spawned by a question posted on ittoolbox.com by Ditchboy434. Yikes, it's like I'm spreading rumors in the eight grade again... and then she said that he said that they said... Anyway, the brass tacks are: Why is enterprise class storage's cost per GB so drastically higher than personal storage? Why does 50Tb of enterprise storage cost $500,000 but 50Tb of personal storage cost $5000? (Seriously, 50 1Tb drives can be found for around $100 each) Chris accurately points out all the reasons why Enterprise storage is more expensive. It has added value. More hosts can share that 50Tb. You can cluster nodes with that storage. It has redundant/dual everything. Fancy features for backup and spare copies, etc. It's fairly straight forward to explain what those extra zeros get you and for the most part the business case holds.


But I think there could be a change on the horizon. Maybe it's already here and I just don't know it. With local storage getting so large, it's possible to put storage amounts in a 4U server that would dwarf arrays from 5 years ago. Even in a 'standard' server it's possible to put ridiculous amounts of local storage on a server. It used to be the only way to attach large amounts of storage to a server was to attach it to an array. That's not the case anymore. Now the array is surviving on it's RAS and feature sets. So you might get an array so you can move data between two servers in a cluster. If your primary sql server fails, the cluster moves the storage to the backup node automatically and your back in business. But in MS SQL 2005, for example, it has the ability to mirror a database in software. You no longer need an array. Just put equal amounts in both boxes and you're on your way. The price per Gb of individual drives and the price to performance ratio of servers has gotten so low that it's now a real option. Instead of a redundant array of disks, you can have a redundant racks of servers. More and more enterprise apps are adding replication abilities at the app level. And as that replication moves up the hardware stack, the case for enterprise arrays gets harder.


A brief tangent. Cloud storage is the latest thing in storage. The idea is you tell 'the cloud' to write your data and it takes care of finding a home for it, making sure it's secure, and making sure it's protected from loss. The same kind of features an enterprise array provides, but outside of a single array now. Provided you have bandwidth to spare you can have the storage spread out across the globe. Or you can simply buy storage as a service from a vendor, like Amazon. If you have the bandwidth, it can be a great way to handle ever growing storage needs.


Ok, back on track. So cloud storage in most cases means wide area. I.E. Not within a single data center. If you're in a single data center, don't buy our cloud storage product, just buy an enterprise class array instead! Or at least that's how I think the argument would go. But what if someone comes up with an easy and efficient 'cloud within the data center' scheme? What if you could suddenly take all that local storage and pool it into "our storage" and share and share alike? I believe there are already some niche products that do something similar to this, but they have requirements and restrictions (and perhaps consumer perception issues) that has prevented broad adoption. What if, for example, Sun's ZFS was able to work across servers with minimal admin intervention? I have to throw that caveat on there because what I'm describing could loosely be considered ZFS and NFS used together, but there's a lot of admin intervention there. Plus I would envision it doing iSCSI or FCoE instead of the NFS protocol. Now who needs an enterprise array anymore? When you fill a rack in your data center, you'd get a 2-for-1 special. One rack would have the computing power and the storage.


Now, having said all that, it'll be a long time before anything resembling this comes to pass. Gig-E vs 2, 4 or 8 Gb fiber channel is one reason. Storage I/O performance is another. One of the big attractions to enterprise class storage is the raw performance of it, and that will be hard to overcome for now. On top of that, with the way storage vendors snipe at each other, their skills will be well honed to attack a common enemy.


On the upside, failed drives could lead to an interesting game of whack-a-mole. With all the leg work running from rack to rack, sys-admin obesity could be a thing of the past.


EDIT: corrected some spelling, grammar and the price of 50 1Tb drives.






No comments:

Post a Comment