Sql-server – Best value for fill factor in index

indexsql serversql-server-2008sql-server-2008-r2

I use SQL Server 2008 R2 and want to set value for fill factor property in each index. I look for recipe to calculate best value for this property (have better performance when insert record) . Also how I can meter query performance by set deference value to this property.

Thanks a lot in advance.

Best Answer

There is no one answer for all with fill factor. It largely depends on how your data modifications take place database-wide or in particular indexes. The default, out-of-the-box is 0 (100) which leaves virtually no space in a page. What this means is an insert into the middle of a page will cause a page split.

Monitor your Page Splits/sec counter and if you are seeing a high rate, then you may want to reconsider your fill factor. But don't just blindly set that low, as you will be using more disk space with a lower fill factor. And naturally, it will cause higher IO reads, as there is more pages to house the data.

I recommend you look at my answer here regarding fill factor. It's a different type question, but it should give you a better idea about fill factor and how it affects you.