Storage Consolidation - with Unified Hybrid Storage
One of the main pressures facing organizations today is how to manage capacity. Countless hours are spent by IT professionals monitoring and managing storage capacity and utilization.
You may be hearing storage vendors talk about storage pools. But what is a storage pool and how do they vary between vendors?
The basic premise is that if you create a pool of storage that is totally virtualized, you can eliminate the stranded storage that has been a problem with typical RAID controller architectures.
As usual with technology, if you take a quick look at the specification sheets of many storage vendors, you will see the concept of a storage pool mentioned. Unfortunately, it often does not mean that they have solved the problems of traditional RAID groups. It takes some digging through the architectural whitepapers to realize that many vendors are not delivering a single pool of capacity with no space reservations and no stranded storage.
To illustrate this, EMC VNX requires you to put their storage pools on top of uniform size RAID groups limiting its usefulness and adding yet another layer of complexity. For example, pooled storage space is stranded from traditional RAID group-based storage space that coexists in the same system and vice versa. Also, disk drive rebuilds still take a long time because it is a traditional RAID rebuild and entire drives and RAID groups have to be rebuilt. With 3TB and 4TB disk drives, that could take weeks and your risk of data loss with traditional RAID group-based storage increases.
At Starboard, we built the Dynamic Storage Pool from the ground up to solve the inherent complexity and limitations of RAID controller and RAID group-based architectures.
Starboard’s Dynamic Storage PoolTM creates a single pool of storage from all of your hard disk drive resources. Storage from that pool is then thin provisioned and allocated to volumes or shares. If you have different classes of drive, 7200 RPM or 15K RPM, you can select the class of drive for each volume based upon your application. Each volume or share can have different sizes of drive within the same class and all the space on the drives can be used. Data protection is achieved by using parity-based protection across all the drives, but there is no hardware RAID controller and therefore, no stranded storage. Starboard built the Dynamic Storage Pool from the ground up to eliminate the complexity and limitations of RAID controller based management.
Here are more details, as explained by Kirill Malkin, our CTO:
First, we create a single pool of all of the disks in the system and then break each disk down into 1 GB extents. For a 3 TB drive this means there are approximately 3000 extents. Then, we further break the extents down into data chunks (16K to 512K) and create data stripes from the chunks. We specify the number of chunks to stripe the data across, the class of disk to use, the type of data protection and the number of spare chunks. We call the combination of these parameters a “layout.” Our Starboard Storage Apps simplify the provisioning process with default layouts, so customers do not have to tweak and tune their storage.
A typical layout (RAID 5 equivalent) might look like this: 4D + 1P + 1S, 64K on 7200RPM drives, where D is a data chunk, P is a parity chunk and S is a spare chunk. Because there are 6 chunks in the layout, the data will be spread across 6 drives with 256K of usable capacity.
Next, we look across the system and determine how many drives you have to use for that layout. Let’s say you have 50 3TB drives or 150,000 extents. This allows us to instantiate the six-drive layout up to 25,000 times, yielding up to 400 million stripes spread across all drives. However, initially we allocate only six extents from six different physical drives, grab a total of about 48 MB of space (8 MB per drive) from them and loosely map it to matching strides (contiguous LBA spans) of the virtual volume that happens to be written first. As written data comes from other volumes and layouts, we continue to allocate space as required by the layout parameters. In this way, we can efficiently use space across all of your drives regardless of the size of drive and without loss of performance
So what happens when you add drives? New drives simply add to the capacity of the pool and are broken down into additional extents. The new drives will be written to by new writes to the virtual volume(s) and in this way we can keep the system balanced without time consuming and inefficient restriping of the data. This process ensures that you have maximum capacity utilization running at peak performance.
The benefits of this approach are many:
- You get to utilize more of your raw space without reservations and stranded capacity
- Disk drive capacity does not default to the “lowest common denominator” if you mix disk drive sizes
- Disk Drive rebuilds can be 10 times faster since only the data chunks that are actually mapped to a virtual volume have to be rebuilt
- Utilizing more disks for a single virtual volume enables parallelization of disk I/O for better performance
- Managing RAID groups and MetaLUNS are a thing of the past
The most important benefit is you have capacity on demand for all of your applications. You can consolidate your file and block applications on a single storage system and any space you have available can be consumed by any application. If your total pool is running out of space, simply add more capacity and it is now available to all applications. It is as simple as that; No additional capacity licenses, No reservations, No stranded capacity, No NAS gateways
You can read more on how dynamic pooling is enabling IT to flight back against the cloud in this article by Starboard Storage CTO Kirill Malkin in a piece he wrote for Virtual Strategy Magazine. http://www.virtual-strategy.com/2013/01/23/it-fights-back-executive-viewpoint-2013-prediction-starboard-storage