Introduction
Exchange 2010/2013 depend on the Windows operating system when it need to write to the storage volume. Windows can format a LUN or Volume with different block sizes from 4K – 64K. The LUN or Volume should be formatted with the appropriate block size to meet the application workload. Exchange 2010/2013 uses 32K pages when it write to the storage subsystem. With a little math we can see what will happen if we select the wrong block size.
Cluster Size | Exchange Page Size | IOPS |
4K |
32K |
8 |
8K |
32K |
4 |
16K |
32K |
2 |
32K |
32K |
1 |
64K |
32K |
.5 |
From this table you can see that each time Exchange has to write 1 page from memory to the storage subsystem the performance can be affected if the LUN or Volume is formatted with the wrong block size. Microsoft recommendation is to use 64K for all Exchange volumes (EDB and Log volumes). So if one of your Databases is having problems with performance the first thing to check is what is the block size that is used for the Exchange LUNS.
An extract from Understanding Storage Configuration for Exchange 2010:
http://technet.microsoft.com/en-us/library/ee832792(v=exchg.141).aspx
How to check the volume cluster size?
To check the volume cluster size you can use the fsutil command line
Command: fsutil fsinfo ntfsinfo f:
4K Block disk
64K Block Disk
How to fix this issue?
The customer will have to reformat each LUN with the appropriate block size. This is a big task and it need to be coordinated so all database copies have the same block size.
Additional Information
NTFS File System Cluster Sizes: http://support.microsoft.com/kb/140365
NTFS Fragmentation and Exchange : http://blogs.technet.com/b/mikelag/archive/2011/02/09/how-fragmentation-on-incorrectly-formatted-ntfs-volumes-affects-exchange.aspx
Nice Article! Do you know if Exchange 2016 uses also 32K Page size?
Where did you find these Values?
Yes it still does. There where some internal MS documents shared with the Microsoft Certified Solution Master Team a couple of years ago. You should format your disk with 64K block size.