Many storage arrays such as HP’s 3Par line, Datacore, and others
have the ability to thin provision storage. VMware also has the
ability to thin provision virtual disks (VMDK files). Over time the
storage utilization increases as data is created, fragmented, and
moved. When data is deleted the storage array does not automatically
free up the disk space in the storage pool. Block based storage arrays
don’t have knowledge of what is using the LUN. It could be a raw device
or have a file system such as NTFS, VMFS, EXT3, VXFS, etc. In order
for most block based storage arrays to reclaim thin provisioned storage,
the storage array has to find a zero bit pattern in an allocation unit
of storage. That way the array knows that removing an allocation unit
from a LUN and returning for reuse in the storage pool does not result
in lost data. Datacore by default divides up it’s storage into 128MB
segments called Storage Allocation Units or SAUs for short. 3Par uses a
unit called a Chunklet which is 256MB. If the array detects only zeros
in an allocation unit, it will release it from the volume to which it
is assigned and return it to the storage pool for reuse.
On Microsoft Windows the commonly accepted method to write a zero bit pattern to the free space is by using the Sysinternals utility called sdelete. However, a change was made to the command line switches that effects the behavior. With sdelete v1.51 the “-c” switch wrote a zero bit pattern to free space, and the “-z” switch wrote a series of ones and zeros to securely overwrite the free space. With sdelete version 1.6 the functionality has been reversed.
If you are trying to reclaim thin provisioned space with sdelete version 1.51 or earlier you need to use the “-c” switch. For version 1.6 you need to use the “-z” switch. In case it changes in the future, you are looking for the switch referenced in the sdelete command line help that reads “Zero free space (good for virtual disk optimization)”.
On Microsoft Windows the commonly accepted method to write a zero bit pattern to the free space is by using the Sysinternals utility called sdelete. However, a change was made to the command line switches that effects the behavior. With sdelete v1.51 the “-c” switch wrote a zero bit pattern to free space, and the “-z” switch wrote a series of ones and zeros to securely overwrite the free space. With sdelete version 1.6 the functionality has been reversed.
If you are trying to reclaim thin provisioned space with sdelete version 1.51 or earlier you need to use the “-c” switch. For version 1.6 you need to use the “-z” switch. In case it changes in the future, you are looking for the switch referenced in the sdelete command line help that reads “Zero free space (good for virtual disk optimization)”.
No comments:
Post a Comment