The solution to this complexity is to provide a layer of virtualization at the server level, which is being done with products like Xensource or VMware or Microsoft Virtualization Server. Now you have virtualization applied at the networking layer and virtualization available at the storage layer. The goal is to virtualize the entire data center environment over the next two or three years so that a "utility capability" becomes available, eliminating these silos so that managing the overall environment becomes easier, and we start getting applications delivered as if they were a utility at a level of performance that the users have requested.
Think of storage virtualization as an abstraction layer put on top of a large number of physical storage devices. We have a massive proliferation of physical storage devices and arrays and JBODs all over the enterprise (not only in the data center). Managing these storage boxes has become impossible. The abstraction possible with storage virtualization "hides" the idiosyncrasies of each physical storage system and provides a common way of dealing with all of these disparate devices, significantly easing storage management.
Storage virtualization also provides a consistent interface for all storage applications. In other words, a storage array today from IBM, EMC or Hitachi Data Systems comes with its own set of storage applications like replication, mirroring, snapshots, etc., but the actual applications are different for each system. By adding storage virtualization on top of these heterogeneous boxes, you enable a single set of storage applications, so there's no need to learn multiple applications to achieve the same function. This is also true for tasks like data migration and consolidation, and makes these otherwise disruptive tasks far less disruptive to the storage enterprise.
Suppose you want to change RAID protection from RAID-0 to RAID-5. Today, you'd have to backup the data, create another RAID 5 LUN and then bring the data back onto the new LUN. It's a very disruptive process. If you want to create tiered storage, you'd probably have two or three separate storage boxes as Tier 1, Tier 2 and Tier 3 -- you can't bring those boxes together. Storage virtualization eliminates both of these problems and enables replication between heterogeneous boxes.
Check out the rest of our Storage Virtualization FAQ guide.
This was first published in August 2007