February 19, 2011 at 4:39 pm
Comments posted to this topic are about the item Disk Partitions
February 20, 2011 at 5:34 am
Good question Steve. Something new really.
M&M
February 20, 2011 at 6:34 pm
Good question, but the explanation says that WIndows 2008 always succeeds in doing the alignment needed. This is not correct. Windows 2008 will align the partition by using an initial offset or 1MB; this is an attempt to align correctly taking into account RAID stripe size. It works for stripe sizes 64kB, 128kB, 256kB, 512kB, and 1MB (and of course for anything that evenly divides 64kb); it doesn't work for any other size - so Windows 2008 attempts to get the alignment right, but it may fail. The nasty case here is networked storage, which may be administered by someone not familiar with Windows, who picks a strange stripe size (eg 192KB or 320kb - I assume no administrator of a Windows system would do this, as such an administrator should know about the partition alignment issue). Of course even for local storage the Windows OS is generally unable to discover stripe sizes accurately, so it can't guarantee to pick an appropriate offset even then if the local admin has done something strange in configuring the discs and the RAID controllers.
Tom
February 21, 2011 at 1:14 am
Nice question, thanks.
Also thanks to Tom for the additional info.
Need an answer? No, you need a question
My blog at https://sqlkover.com.
MCSE Business Intelligence - Microsoft Data Platform MVP
February 21, 2011 at 3:21 am
Very good question!
I hope this raises the awareness of the issue as it has constantly been an uphill struggle, in the past, to enforce partitioning alignment...
February 21, 2011 at 5:16 am
a nice reminder to people NOT on windows 2008 to do this.
---------------------------------------------------------------------
February 21, 2011 at 7:22 am
I have never heard of alignment before. As usual when I haven't heard of something I start researching. What I found was some really fascinating reading. Thanks for the question.
February 21, 2011 at 7:59 am
Top notch question! As I've mentioned earlier, I like these hardware related questions - not that I'm a hardware expert. I'll have to learn more about this.
I suppose a followup question would be, but what if the drives are SSDs?
The greatest enemy of knowledge is not ignorance, it is the illusion of knowledge. - Stephen Hawking
February 21, 2011 at 9:15 am
Good question and a good topic.
February 21, 2011 at 9:21 am
Well, the theory says that SSDs would also be affected...
I.e. any partition created on an SSD would have to be aligned. Care should here be taken as the specific SSD manufacturer might have implemented strange sizes (much like that rough SAN (non Windows) admin in the article) and alignment might need more investigation.
February 21, 2011 at 7:23 pm
That was a tricky question: I don't use window "server" and I know very little about them (my databases are small enought to put on "regular" window"), so for me, "window 2008 R2", and "window 2008"... well... never heard of that :unsure:
But saying that, I should have guest that you were talking about "servers". Nice question even I don't think I will ever use "alignment on disk partition":alien:
February 22, 2011 at 9:23 am
Thanks for the question.
Jason...AKA CirqueDeSQLeil
_______________________________________________
I have given a name to my pain...MCM SQL Server, MVP
SQL RNNR
Posting Performance Based Questions - Gail Shaw[/url]
Learn Extended Events
February 22, 2011 at 10:50 am
Thanks for the question, I think it is good to bring attention to this. (I just wish there was a better/easier/more reliable way to get everything lined up through the whole I/O chain.)
February 22, 2011 at 11:01 am
Tom.Thomson (2/20/2011)
Good question, but the explanation says that WIndows 2008 always succeeds in doing the alignment needed. This is not correct. Windows 2008 will align the partition by using an initial offset or 1MB; this is an attempt to align correctly taking into account RAID stripe size. It works for stripe sizes 64kB, 128kB, 256kB, 512kB, and 1MB (and of course for anything that evenly divides 64kb); it doesn't work for any other size - so Windows 2008 attempts to get the alignment right, but it may fail. The nasty case here is networked storage, which may be administered by someone not familiar with Windows, who picks a strange stripe size (eg 192KB or 320kb - I assume no administrator of a Windows system would do this, as such an administrator should know about the partition alignment issue). Of course even for local storage the Windows OS is generally unable to discover stripe sizes accurately, so it can't guarantee to pick an appropriate offset even then if the local admin has done something strange in configuring the discs and the RAID controllers.
Tom,
Thanks for the extra information, that is very useful. One question I have is about the stripe size: Is that the stripe size on each individual spindle, or the stripe size across the entire array? For instance on a 10 drive RAID10 array with a strip size of 128 KB that results in a "full stripe size" of 640 KB. (What would be the correct initial offset for that?)
February 22, 2011 at 12:03 pm
You might read this to better understand. I believe this is the stripe alignment of each particular drive as seen by Windows. So potentially the array is not aligned as a whole, not each drive, though each drive should be aligned as best it can be.
http://msdn.microsoft.com/en-us/library/dd758814%28v=sql.100%29.aspx
Viewing 15 posts - 1 through 15 (of 19 total)
You must be logged in to reply to this topic. Login to reply