Skip to main content

Cloud

Aligning your SAN, moon, and stars with Server 2008

For you truly geeky Exchange and SQL administrators, you may be familiar with using diskpart on Windows 2000/2003 to manually configure the partition sector offset for your SAN based LUNs. Not a super geek and have no idea what I’m talking about? No fear, Server 2008 is here to the rescue. Yes, in this case Server 2008 fixes a problem rather than creates one.
First, a little background. What is the partition sector offset? When Windows creates a new partition it leaves a little empty space on the disk, padding if you will for unimportant things such as the MBR and partition table. You know, things that you can delete with no problems. Just kidding!
If the partition starts on an ‘odd’ boundary then there may be a mismatch between the blocks on the disk and the cache in the RAID controller. This can manifest itself in reduced performance. Aligning the partitions on a ‘proper’ boundary can increase IOPS performance up to 15% or more.
15% free performance sounds like a deal, right? Prior to Server 2008 and Vista, Windows defaulted to a partition offset of 63 512 byte sectors, which nearly always played tricks with the RAID cache and degraded performance. Why 63? I have no idea. 64 would have been a magically good number, but I guess someone felt saving 512 bytes was better than 15% performance increase.
During the very long gestation period of Vista/Server 2008, someone at MS realized 63 was pretty silly and used a new default of 2048. Is 2048 better than 63? Yes, so much so, that you now don’t have to manually partition and format your disks to properly align disk I/O with your RAID cache.
Yes, you read that right, NO MORE manual disk alignment with Server 2008 when you create partitions with Server 2008.
2048 sectors can be considered a universal alignment number, and shouldn’t be changed unless your storage vendor has major heartburn and suggests something else for Server 2008. They may not realize Server 2008 now uses an offset of 2048 and still recommend 64.
Don’t trust that Server 2008 doing the right thing? It’s easy to verify that new partitions are using the 2048 sector offset. To do this, type the following command:
wmic partition get BlockSize, StartingOffset, Name, Index
To determine the starting sector offset, divide the StartingOffset value by the block size. If the partition was created by WS2008, you should get 2048. If you get 63, the partition was created by Server 2003 or earlier and is not properly aligned.
Note that alignment has nothing to do with NTFS, so reformatting will have no affect on the alignment. If your partition is mis-aligned, you need to blow it away (after backing it up) and recreate it from scratch.
This is great news if you are building Exchange or SQL clusters on Server 2008, as you can now use the disk manager GUI for configuring your dozens of LUNs and not take the time to manually configure the offsets.
Happy partitioning, and now you can rest better at night knowing your RAID controller is processing properly aligned data and you can tell your boss you boosted storage performance by 15% or more and need a raise.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

PointBridge Blogs

More from this Author

Follow Us