This article can also be found in the Premium Editorial Download "SharePoint Insider: Exploring the top SharePoint 2010 features."
Download it now to read this article plus other related content.
The biggest mistake most organizations make in terms of capacity planning for SharePoint is to do nothing. Why does that happen? There are plenty of excuses.
For one thing, SharePoint is a multi-layered application, so capacity planning can be pretty complex. It's crucial to have knowledge of the different capacity limitations of your Windows file system, Active Directory, .Net framework, Internet Information Services and SQL Server. Knowing those limits can prevent a bottleneck that would slow down the performance, user experience or growth of SharePoint.
Some of the most common excuses for capacity planning lapses are that there isn't enough time because of an unrealistic deadline; or, there is insufficient data available on current or past usage to make an intelligent prediction about the rate of future growth. Or perhaps there is a lack of knowledge about how SharePoint stores and manages information.
Whatever your reason, here are some guidelines that will help with the planning process.
The first SharePoint capacity features to consider have to do with Active Directory. SharePoint uses Active Directory accounts and groups to authenticate users and then uses SharePoint group membership to authorize them.
AD limits that affect SharePoint are the capacity limitations of security principals per securable object. There is a limit to the number of users and groups you can associate with a site, library or list item if you want it to be indexed properly. It is approximately 2,000 users. This is because there is a limit to the size of an Access Control List (ACL) in Active Directory of 64 KB. Each user or group is about 32 bytes in size.
When SharePoint indexes the item, if the 64 KB limit is reached, indexing of that item and all items below that scope will fail. So, you can have ACLs larger than 64 KB, but they just won't be indexed.
Note that one Active Directory group counts as one security principal, and that AD group could have 100,000 users in it, so a document could still have well over 2,000 users associated with it, but only indirectly through AD group membership. Also, be aware that a user can be in no more than 1,015 groups.
The guidelines state you can have 2 million users per website. Keep in mind, too, that in Microsoft Office SharePoint Server (MOSS), all site groups are cross site groups; that is, in one site collection, every group can be used to grant rights in another group. And even though you can scale a site collection to 250,000 sites (see below), watch the 2,000 security principals limitation.
The magic number 2,000 pops up again in MOSS capacity planning in relation to limits on lists and views. You can put 5 million items in a list, but performance of any view on that data will start to deteriorate at 200 items and grind to a halt by 2,000 because the underlying SQL queries are not paged or filtered.
This is especially something to watch out for in grouped views because all of the data is loaded even though only a little of it is seen until a category is expanded. Using folders breaks up the number of items into smaller chunks, but this leads to navigation issues and overly long URLs (there is a limit of about 260 characters).
You should keep the number of subsites to below 2,000 because of performance issues when viewing the list. Also, keep the number of columns to less than 2,000 on a Library and 4,000 on a list. A site collection can have 250,000 sites in it, but the way you organize the sites is important. For example, 125 websites with 2,000 subsites might work OK, but breaking them out into even smaller groups will allow your architecture to scale better. Recycle bins also count toward capacity, so when planning, be sure they won't become too big.
To do capacity planning well, you should know the primary article on capacity planning published by Microsoft very well. There is no excuse for saying the knowledge was not available!
ABOUT THE AUTHOR
Stephen Cummins, founder of www.spsfaq.com, is a SharePoint consultant and has been a SharePoint MVP (Most Valuable Professional) for the past seven years. He lives in Kildare, Ireland, with his wife, daughter, two dogs and an ever-changing number of goldfish.
This was first published in October 2009