After a host writes to a thin provisioned volume, the physical capacity is allocated to the host file system. Unfortunately, if the host deletes the file, only the host file system frees up that space. The physical capacity of the storage system remains unchanged. The storage system does not free up the capacity from the deleted host file; this capacity is commonly referred to as “dead space”. Obviously, this method is not the most effective one for handling back-end block-level storage. Ideally, when a host deletes files, that space should be reclaimed by the host file system and the back-end storage system.
This Technote explains how the IBM XIV Storage System Gen3 with IBM XIV Storage Software V11.2 can now fully use its thin provisioning capability by enabling support for the Windows Server 2012 space reclamation feature.
Thin provisioning provides a specified volume size but uses physical storage only when it is needed. Although this sounds like a great way to use the available storage space efficiently, it might not be possible always. When files are deleted or moved, the now unused data is usually still on the physical storage. The host system might indicate that the used capacity is now smaller, but the physical storage is still in use and remains allocated to that host system.
Space reclamation deals with this situation by providing a way for the host system to indicate that the physical storage that is assigned to it is no longer in use. Various host operating systems deal with this process differently so the various commands that are used and the amount of space that is reclaimed might vary.
Space reclamation architecture
Space reclamation in many operating systems is typically achieved by running the Small Computer System Interface (SCSI) Write Same or the SCSI UMAP commands. Which command you use depends on the operating system that is involved.
These SCSI primitive commands have different characteristics and might reclaim various amounts of capacity.
Windows 2012 Server uses the UNMAP command for space reclamation.
UNMAP command
Starting with XIV Storage Software V11.2, the XIV Storage System Gen3 provides support for the SCSI UNMAP function, which is natively available with Microsoft Windows Server 2012.
The UNMAP command has the following characteristics:
The material included in this document is in DRAFT form and is provided 'as is' without warranty of any kind. IBM is not responsible for the accuracy or completeness of the material, and may update the document at any time. The final, published document may not include any, or all, of the material included herein. Client assumes all risks associated with Client's use of this document.