Thin provisioning can aid storage capacity management by allowing storage professionals to optimise their purchases of disk space by allowing a LUN volume to be provisioned without requiring the physical disk space to be present until it is ready to be written to.
In this interview, SearchStorage.co.UK Bureau Chief Antony Adshead asks Steve Pinder, principal consultant with GlassHouse Technologies (UK), about thin provisioning, its storage capacity management benefits and pitfalls, and the key differences between different vendors' thin provisioning offerings.
You can listen to the interview as an MP3 or read the transcript below.
Download for later:
Download the podcast with Steve Pinder
• Internet Explorer: Right Click > Save Target As
• Firefox: Right Click > Save Link As
SearchStorage.co.UK: What is thin provisioning, and how can it help with storage capacity management?
Pinder: Thin provisioning is the process of fooling a host into thinking it has access to more storage than it really has. When you want to assign LUNs from a thin provisioning pool to hosts, they are created in a similar manner to standard LUNs. The difference with thin-provisioned LUNs is that at creation time no physical storage is assigned. Therefore, the LUN size that you assign isn't really its capacity but should be thought of as the maximum storage capacity that the LUN is able to take.
As data is written to the LUN, the storage array writes the data to the next available location in the thin provisioning pool. As there will be many hosts that are assigned LUNs from the pool, it is highly likely that the data for any particular LUN will be scattered all over the pool. One job of the array is to keep track of all the data within the pool and which host has access to which areas of it.
Of course, the hosts have no idea of all this work that is going on in the background -- they think they have been presented with a standard LUN of the correct size.
At a simple operating level, two advantages of thin provisioning are as follows:
Firstly, you can assign whatever capacity you like for each LUN up to the limit of the operating system or array because physical capacity is only used when data is written. Secondly, data for a particular LUN will usually be spread among more physical drives than would otherwise be the case and may lead to increased performance.
SearchStorage.co.UK: In what ways do thin provisioning options from different vendors vary, and what are the potential pitfalls in thin provisioning?
Pinder: At a simple level thin provisioning from different vendors is very similar. All vendors allow physical drives to be added to a storage pool that will be available for thin-provisioned volumes. The vendors' technologies differ in areas such as segment size within the pool, whether thin volumes can be replicated and cloned, or the pool optimisation techniques.
A couple of examples of technologies that not all vendors offer are zero page reclaim and pool shrinkage.
Zero page reclaim allows further optimisation of LUNs that are migrated to the thin provisioning pool from standard volumes. When a standard LUN is formatted, the host writes zeros to all the pages to check for errors. As data is written to the LUN, the blocks change to a combination of ones and zeros, so unless a LUN is 100% full, there will always be many pages on the disk that contain only zeros. If this LUN is migrated to a thin provisioning pool that allows zero page reclaim, these pages will be made available for future use.
All thin provisioning technologies allow for the pools to be increased in size, but not all allow for pools to be decreased in size. This feature can be a lot of use if, for instance, you want to replace some old drives within a storage array to take advantage of newer ones with higher capacities. You could shrink the pool, replace the small drives with larger drives, and then increase the pool to a much greater extent than would otherwise be possible. There are other [storage capacity management-related] features that are not available on all storage arrays so it is important to check which array includes which technology before purchasing.
As far as pitfalls are concerned, it is critically important that you know the free capacity within the pool at all times. Once a pool is over-provisioned -- that is, you've assigned capacity to hosts that is greater than the capacity of the pool -- there is always the possibility that the pool will run out of physical space. This can cause writes to every LUN in the pool to fail and lead to quite dire consequences. One other thing I would say is don't assume that features available for standard LUNs will be available for thin-provisioned LUNs. As long as you are aware of the limitations of your thin provisioning technology, and don't let the pool run out of space, you should be able to increase the utilisation of your storage estate significantly.