April 7, 2011 at 7:37 am
I am creating a database with 3 datafile on primary spread across 3 different drives so now how will the data pump into these files by default.
April 7, 2011 at 7:49 am
If it is within one filegroup then the SQL Server will stripe data across those files proportionally. Meaning based on the free space left in each file it will write across them so that they reach the full state at the same time.
Shawn Melton
Twitter: @wsmelton
Blog: wsmelton.github.com
Github: wsmelton
April 7, 2011 at 7:51 am
ok ,good. that what i needed so that it uses disk equally on 3 disks but i have a concern here, i always keep 20% of free space on each drive but with this design is it going to fillup 1 drive then go to the next drive?how it works actaully
April 7, 2011 at 8:18 am
Well it will try to write to each file equally but if it turns out that somehow File1 gets to say 50% free space on it and File2 and File3 have 100% free space within the file, it will start writing more to File2 and File3 to get them to 50% free space. As well when the files get close to being full SQL Server will not auto grow any of the files until they are all filled, and when they do grow it is done in a robin style.
I would suggest if you are worried about it filling the drives up to set them to not autogrow, but include some type of notification/alert so you will know when they are reaching that limit.
Shawn Melton
Twitter: @wsmelton
Blog: wsmelton.github.com
Github: wsmelton
Viewing 4 posts - 1 through 3 (of 3 total)
You must be logged in to reply to this topic. Login to reply