Virtualising storage in the Cloud

On my Cloud mission, I want to revolutionise how my company uses storage. What we currently have is fantastic, nice fast 15k rpm FC4 disks for all our database love and semi decent SATAII 7.2k rpm for the bulk storage stuff. All of it is tray loss protected (tlp), dual supplies, dual controllers etc. We use nothing but RAID10 (to benefit from tlp) for performance, and we stripe volume groups across all spindles in a tray/RAID10 group.
To get performance, you need spindles, fast spindles, the more disks you can read the required data from, the better, and the fast those spindles turn, the quicker they’ll be able to not only read the data, but also during random writes and reads, a fast disk will be back to the right spot to be written to or read from quickly. All of this reduces latency. Speed = spindles and spindle speeds. All of this twinned with a fast controller and a fibre infrastructure and you’ve got a bullet.
All of these things are great, but I now I am losing loads of spindles in my RAID10, it’s extravagant (but still provides best performance) I am also limited in that transferring volumes between disk types/raid types isn’t supported. I am also restricted in that I have uber fast disk, and chuggy slow disk, nothing in the middle like SAS to plug that medium performant disk gap. I can also do nothing about ‘old’ and unused information staying put on my expensive fast disk. If it’s not being accessed why must I keep it performant?!

We have virtualised the servers, there is vmotion HA to keep us clear of server failures, your vranger, etc to back things up and a variety of other ‘v’ products to do the job, that’s great, but out storage is hardly fluid, it’s fixed. Sure it’s resilient, and we can manage bits and pieces to shift data about, but it’s simply not all that dynamic.

So, queue a visit from Compellent. I’d heard good things from a prof services consultant we hired some 18 months back (a particularly dark time in my SAN life, but …another day). As we went about salvaging my job and the companies systems from a disasterous failure, we chatted and ate pizza as you do. I asked him what his favourite SAN was, and he said Compellent!. Now I since found out the company that employs him purchased a Compellent array, but I can accept bias if it’s supportable and justified.
We were treated to a minimal ppt session, but rather turned it to a Q&A with some knowledable colleagues invited along.
Compellent is essentially a clever software controller (dualled etc etc) and some JBODs. Now that sounds bad, but it’s not, it’s clever! They are using industry standard boards and architecture, their new Series 40 controller will adopt our now beloved Nehalem chipset from Intel. The controllers are based around a super micro board, and PCI slots available for you to fill with technology of your choice, SAS, FC HBA’s, iSCSI initiators etc. It’s up to you ho you confiure it, which makes a change to fixed interface sets and more expensive bespoke purchases from other vendors. However probably the best feature is their own ILM (information lifecycle management). Simply put, ILM moves data around depending on it’s use, or lifecycle. Today, your data is new, this blog is new, it’s in a file somewhere, but if nobody comments on it, nobody reads it and I don’t update it gets old and unused, so you want it to go onto the back burner somewhere, while my latest blogs is at the front, quick to retrieve, on hi speed disk etc. However YOU as and admin don’t want to maintain that, you want the system to do it for you, and Compellent does that, it’s tiered storage approach automatically moves data down the disk speed tier. Not only that, but the Compellent array supports the latest SSD disks, our old beloved FC disks, SAS disks (and the variant thereof) and of course SATA. This gives you uber speed, fast disk, pretty fast disk and slower disk. The system will move your data between them according to use, if you don’t use it, it drops it down the tier, and if you use it again, it brings it back up. Not only that, but it does this within the lun itself, so 1 file might be on slow disk in your array, but the other is on fast disk all within the same volume. HOW AWESOME IS THAT!!
Also, the system is all block level driven, it supports all your OS requirements, but in reality it doesn’t care what you use. You get unlimited snapshot ability, and it only stores delta changes, again at block level, so if your volume is 100GB, your first snap will be 100G, but after that, each snap only stores the changed blocks. HOW AWESOME IS THAT!!

There are many other features on the array, and we could talk about their licencing etc, but for me the ILM is the killer app, that sells it.
I am sounding like i am smitten, and I probably am, but I’m not blind to some failings which I need to address, stuff like TLP, there is a lot of shuffling when you ask about losing a whole shelf (power etc) Also, what if my database has fallen to  SATA disk, and someone in Finance runs a report on it, does it have to now run that report on SATA (and I get a moaning phonecall) or will it move it up, but, would it do that mid report!!, and again if it remained on SATA, would it not move it to FC in the next ILM cycle… pointless, as we only wanted it the once. Furthermore, if the SATA array is running RAID5 or maybe at best RAID6, is it AS protected as it should be RAID10. We lose 2 disks from a 5 disk set, and that’s it, data gone! Explain that away when you commisioned it it was RAID10 all singing and dancing etc. So, it’s a long way to go, I like the girl, but we’re dating, there’s no ring yet.

2 thoughts on “Virtualising storage in the Cloud

Add yours

  1. Hi Luke,

    A friend of mine stumbled across your blog and since I use Compellent at my company, mentioned it to me.

    We recently implemented their Storage Center SC30 system, with the hope of right-sizing our performance whilst saving money. We have not used SSD disks in our solution yet – I guess that would be something we are keeping in our “back pocket” in case we need a LOT of performance in a hurry!

    It is a very smart system, and I do like the ILM features as well as the amount of control you get over managing the data by policy (at a block level, of course) and the reporting features in their Enterprise Manager (which was bundled) are absolutely great!

    Anyway, I did have similar concerns as you around tray loss. My understanding of their implementation is that for RAID-10 arrays, the system tries to distribute the mirrored data across different trays (assuming you have more than one tray). For RAID-5 to be similarly protected, you would need 5 trays at a minimum (as their stripe width choices are currently 5 and 9 spindles wide). Stands to reason if you want RAID-5 (for lower cost) but can’t afford 5 trays of each disk type you are using, then you won’t get tray loss protection.

    Also, an interesting point you made about reading a large database from lower tier disk (e.g. SATA). There are algorithms in the Compellent system which deal with multiple reads from lower tiers – and there is indeed a trigger point where the lower tiered data will be scheduled to move up to the next tier up (e.g. fibre channel) if it is accessed often enough, but I believe the system is smart enough not to move large chunks of data up and down all day. As for performance, the system will of course be reading the data from SATA, but the nice thing about Compellent is that the data will be spread across typically many more spindles than a traditional system, so the increased SATA latency is somewhat countered by the number of parallel accesses which are going on.

    I think actually, the nicest thing about the Compellent system is that if you want a certain amount of protection or performance, then the system is flexible enough to be configured so that you can get it (possibly at a price, of course!).



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create a website or blog at

Up ↑

%d bloggers like this: