First, a little bit about thin provisioning: It’s a virtualization technology that abstracts physical storage from logical users in order simplify management, especially expansion, and improve utilization. The technology allows an administrator to allocate as much virtual capacity as an application or file system would ever need and then “backfill” with physical capacity before it’s actually consumed. This prevents the much more complex process required by a “thick provisioning” model of expanding an application’s storage allocation by concatenating volumes or copying the entire data set to a new, larger volume.
Thin provisioning is like an inflatable building that can grow as large as needed without disrupting the occupants. Besides simplifying storage expansion, it can also improve utilization by eliminating the practice of over-allocating capacity upfront to accommodate expected growth down the road. And, like adding air to the inflatable building, thin provisioning’s efficiency can reduce the much smaller but still significant amount of headroom historically added to each storage volume to make sure capacity isn’t exhausted before more storage can be added. But there are a few more details about thin provisioning that should be addressed, like how to convert “fat” volumes to thinly provisioned ones and how to keep a thin-provisioned volume thin.
Thin persistence: Keeping thin volumes thin
When new thin-provisioned volumes are created and data is written to them, the efficiency and capacity savings outlined above are realized. But what happens as thin volumes are written to and deleted from over time; how do they stay thin? Or what happens when a thick-provisioned volume is migrated into a thin-provisioned LUN? Some “thin-aware” file systems can communicate with thin provisioning storage systems to reclaim deleted space. Other methods involve scanning LUNs for unused space and writing zeros to these blocks to mark their available status. Then, a “zero detection” routine is run to reclaim storage space or used when volumes are migrated to prevent copying these deleted blocks.
The takeaway here is to be aware that thin provisioning doesn’t stop with the creation of thin LUNs. Keeping thin volumes thin requires effort and can consume considerable amounts of memory and CPU resources. When evaluating a storage system, you should learn how the manufacturer handles this issue of thin persistence, especially the impact of what can be a CPU-intensive process on storage system controllers.
Virtualization is a fairly common concept in storage and IT in general. Customers understand the benefits, but it’s still a complex topic. Thin provisioning is a specialized form of virtualization and can be somewhat more difficult to understand, but the benefits are real and it is becoming a standard feature in many storage systems. Customers appreciate succinct descriptions from VARs about newer technologies like thin provisioning and the ramifications of details such as thin persistence. Understanding the basics of thin provisioning offers a good opportunity for VARs to educate customers and reinforce their trusted-advisor status.
This was first published in April 2011