I've often thought the default number of site collections allowed in a content database is just silly. While you can put 5000+ site collections in a single database, in most environments, that's unrealistic. When I teach this part of the SharePoint 2013 course, I relate several elements in the product that work together to help the ITPro SharePoint Farm administrator manage their databases. Those elements are:
- Recycle Bin settings
- Max number of site collections in a database
- Site Quotas
- Internal Service Level Agreement (SLA)
- Restore throughput on your database hardware
Let's assume that if a SharePoint database goes down, you have four hours to get it back up. Now let's assume that if you need to restore the database, that you can restore 300GB in one hour. (For some, these are silly assumptions, for others, these are close to real-world.) So in my pristine, ivory-tower world, I would only want to be doing a restore 25% of the time within my SLA – which means I have 3 hours to troubleshoot, think, reflect and most importantly, give constant status updates to everyone who thinks I was playing golf when the database went down.
Because the second stage recycle bin is part of the database but is not counted in the site quotas, this content needs to be factored in. The default is 50% of the live site quota – in our model today, I'm going to set that percentage at 20%. What this means is that on a site collection with a 10GB quota, the total amount of data that can be consumed in the database by that site collection is 12GB (1+.2). This needs to be factored in when calculating the maximum number of site collections for a database.
So, in order to ensure that we meet our targets for completing a restore of a database and getting it up and running within the SLA, we need to run some calculations. Here are the variables:
- Recycle bin settings: 20% (Y)
- Max number of site collections in a database (X)
- Site Quota (Q)
- Max Database Size 300GB (Z)
So the formula works out like this:
X * (1+Y) = Z
Population of the formula works out like this:
X * (1+.2) = 300
1.2X = 300
X = 250
Hence, given the parameters above, the maximum number of site collections you could allow in your content database is 25.