Shining the light on enterprise and modular storage
by Hu Yoshida on Sep 1, 2009
On these long summer days, my wife and I like to sit out on the patio under our canopy umbrella and enjoy the evening. We have a string of lights on the canopy that casts a warm glow. I looked at those lights the other day and commented that if I replaced that string of lights with a 40 watt light bulb, I could bring out my laptop and do some blogging. My wife said that would be a great idea and I could also bring a blanket so I could sleep out here as well. Sometimes it is hard to tell if my wife is joking.
The reason I was equating the string of lights to a single 40 watt light bulb was due to some of the comments that were generated from my last blog on enterprise storage. Bloggers like Barry Whyte and Enrico Signoretti claim that new modular storage using standard hardware can be more scalable, available, and feature rich than monolithic storage systems, especially when you cluster them together.
I agree that modular storage has come a long way since it was developed as external storage for workstations. The Hitachi AMS 2000 is an excellent example of innovation in modular storage with its active/active controller architecture which eliminates the need for LUN ownership assignments and the addition of Dynamic Provisioning to recover the waste of allocated unused space. Its low cost, ease of use, and dense 48 disk SATA drawers make it ideal for Tier 2 and 3 applications. It also works extremely well as Tier1 storage in midrange environments where there are available maintenance windows. The AMS 2000 is still a two processor storage system. When one processor is taken down for maintenance, the other processor has to take on double the workload and is exposed to another failure unless a maintenance widow is scheduled. This is just the nature of a two controller system – no matter who makes it. The advantage is the lower cost and ease of configuration of a two controller system that does not require the overhead to maintain a common shared cache. The down side is that these controllers have to do everything.
The demands on a controller’s storage processor has increased dramatically since the early days when all it had to do was support reads and writes from a direct attached workstation. Not only does it have to manage the storage ports and cache on the front end, RAID and array group management on the backend, while simultaneously managing copies, moves, and replication across tiers, not to mention the meta data management for thin provisioning — now it has to cope with the higher demands of flash disks and virtual servers that deliver 5 to 10 times the load of a single physical server. In a modular storage system, each of the two processors must do everything. Clustering a number of these systems together can increase the number of servers that can attach and increase the aggregate workload, but it does not increase capabilities of one processor to do more work.
In a monolithic storage system where all the processors share the same cache, the work is divided up so that some processors manage the front end, others manage the backend, and still others manage replication and data movement. This is a form of clustering, but the cluster works off of one common cache so multiple processors can work off the same cache image. If you want to support all the functions that are required from today’s storage systems, then the multiprocessor architecture of a monolithic storage system seems better suited than the two processor architecture of a modular storage system. Modular storage systems can use the multiprocessing power of enterprise monolithic storage if it is attached behind a USP V or VM. That way we can combine the best of both worlds.
If I compare cache to a filament in a light bulb, the filament in a 40 watt bulb can give me more light to blog by than the filaments in a string or cluster of 2 watt bulbs. That’s what I was thinking when I fell asleep on the patio.
I agree with you that it is going a take a while for the grid based storage systems to perform like traditional monolithic arrays but one thing to keep in mind is that many companies don’t really know the performance requirement when planning out a new installation. Hence they tend to buy the best available since once a storage array procurement decision is made(to buy monolithic vs modular), the only way to upgrade for performance is rip and replace. You can upgrade cache but if you end up installing more drives as more applications go online, you may start seeing performance issues. However the new grid based approach would let you scale out as your environment grows. You start small and you scale out based on your need.The best analogy that comes to mind is VMware. You start off with a single quad core blade, and based on your requirement, buy more processing, memory as needed. Similarly, XIV storage, due to the way it scales out has tremendous growth potential going forward, especially if they upgrade to SAS architecture from SATA.