When people talk about virtualization, they are usually referring to server virtualization, which has become widely...
Storage virtualization is far less consistent, with many different goals and approaches. Software-defined storage has emerged as a new take on parts of the storage virtualization conversation, and it can achieve some of the same goals as well as some new ones.
But with virtualization creeping into many elements of storage design and management, there is little clarity on what the benefits of storage virtualization are, what it is meant to do and how it does it. There are several types of technologies available today that could be classified by an IT administrator as storage virtualization.
Many of the advances in storage systems over the last 20 years can be described as a form of virtualization.
An example is RAID 5 protection, where data is striped across multiple drives with additional parity to allow for rebuilds after a component failure. That can be classified as a form of data layout virtualization, as can thin provisioning, wide striping and snapshots. Systems that mapped specific data access paths to specific drive sectors gave way to more advanced forms of storage architectures, most of which were enabled by software and fit the standard definition of virtualization.
You'd be more likely to call storage systems that contain these features advanced, next generation or virtualized, rather than using the term storage virtualization.
That said, many of the benefits of data storage virtualization can be achieved with the advanced feature sets contained within these feature-rich products, with the notable exception of managing systems from other vendors. In the case of clustered architectures, virtualization spans physical machines, but not heterogeneous ones.
Storage virtualization pools capacity
The most common architecture to be called storage virtualization is a control layer that sits in front of storage from multiple vendors. Examples of this type of virtualization include EMC VPlex, Hitachi USP virtualization, IBM SVC and NetApp FlexArray. Third-party companies such as DataCore and FalconStor can also be included in this category.
This type of storage virtualization allows you to consistently manage arrays from many vendors, and apply all the features of the virtualization device to the arrays that sit behind it. For the most part, an array that's virtualized this way would no longer use the management console or features of the physical system. It would be managed through the virtualization layer, and also take on its features and capabilities. Essentially, you trade the feature set of each individual, underlying physical storage system for the consistency of applying the same management layer across all the capacity in the environment. Once the virtualization layer is in place, moving data from array to array becomes non-disruptive -- data can span physical systems and changes can be made in a single pane of glass.
The performance impact of storage virtualization varies and it shouldn't be assumed that it would always be negative. One of the benefits of storage virtualization is that the presence of cache in the virtualization layer could lead to improved performance vs. non-virtualized storage systems if it helps to avoid cache misses, fulfill read requests or acknowledge writes from cache instead of from disk. Additionally, the ability to move data in the environment non-disruptively to avoid hot spots and bottlenecks could outweigh any penalty from driving traffic through the virtualization layer. As with most technologies, you have to test your particular workload under real-life situations to determine the likely impact.
Survey says: Users still unsure about benefits of virtualizing storage
Improve performance with a virtual storage infrastructure