Does fragmentation affect VMFS datastores?

Fragmentation is when blocks belonging to the a file are scattered over the volume in a non-contiguous way, thus increasing disk seek and rotational latency.

Fragmentation is not relevant to VMFS performance for the following reasons:

  1. Fragmentation causes performance degradation when I/O request from application spans multiple blocks and these blocks are discontiguous. The VMFS block size is so large that most of the I/O requests do not straddle block boundaries. Even if blocks are discontiguous, I/O requests execute to locally contiguous regions.

  2. Virtual Disks are very large files. When a gap occurs, the gap is also large. Performance latency is most acute when the drive head(s) need to perform multiple seeks to assemble a file. In the case of a single (or very few) gap(s) between large sections, the seek time increase is negligible. This is especially true of preallocated (Thick provisioned) disks.

  3. Disk arrays have huge caches, and most writes are absorbed there. It is very difficult for fragmentation to have a noticeable impact when it comes to SAN devices. Local storage may see more impact from fragmentation as disk caches are much smaller.

  4. Sequential virtual machine streams become random on disk arrays as it is servicing I/O requests from multiple virtual machines on different hosts. In other words, a virtual machine workload is highly concurrent due to many virtual machines running on the same datastore from the same host or from multiple hosts. Higher performance can be achieved by localizing the global storage working set (or hot blocks) on a given datastore than by co-locating a particular file’s hot and cold blocks.

  5. Thin provisioning is not adversely affected either. The major growth of a thin provisioned file usually occurs when the operating system is installed into the virtual machine. Post install, the number of changes that require growth of the virtual disk, on average, decreases. This means that the hot blocks for all virtual machines are typically clustered around the same section of the volume.
Hot block –  A block of data that undergoes many changes. Areas a database write to are hot.
Cold block – A block that is mostly static. After the operation system is installed, these files change rarely if ever.

The other question you might have now, does NTFS fragmentation affect a Windows virtual machine performances within a VMFS datastore? Waiting your thougths…



About PiroNet

Didier Pironet is an independent blogger and freelancer with +15 years of IT industry experience. Didier is also a former VMware inc. employee where he specialised in Datacenter and Cloud Infrastructure products as well as Infrastructure, Operations and IT Business Management products. Didier is passionate about technologies and he is found to be a creative and a visionary thinker, expressing with passion and excitement, hopefully inspiring and enrolling people to innovation and change.
This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s