Tuesday, March 1, 2011

SharePoint 2010 boundaries, Thresholds and Supported limits

9FEB/110

SharePoint 2010 boundaries, Thresholds and Supported limits

Many would be considering SharePoint 2010 for their environment and questions will be asked to SharePoint Admins and Architects on the product.
Here is some handy information from Microsoft on the limitations (boundaries) of SharePoint 2010.

Before we dive into it, letz define what are the limit types:

  • Boundaries: Static limits that cannot be exceeded by design
  • Thresholds: Configurable limits that can be exceeded to accommodate specific requirements
  • Supported limits: Configurable limits that have been set by default to a tested value.

Web application limits

The following table lists the recommended guidelines for Web applications.

LimitMaximum valueLimit typeNotes
Content database300 per Web applicationSupportedWith 300 content databases per Web application, end user operations such as opening the site or site collections are not affected. But administrative operations such as creating a new site collection will experience decrease in performance. We recommend that you use Windows PowerShell to manage the Web application when a large number of content databases are present, because the management interface becomes slow and difficult to navigate.
Zone5 per Web applicationBoundaryThe number of zones defined for a farm is hard-coded to 5. Zones include Default, Intranet, Extranet, Internet, and custom.
Managed path20 per Web applicationSupportedManaged paths are cached on the Web server, and CPU resources are used to process incoming requests against the managed path list.

Exceeding 20 managed paths per Web application adds more load to the Web server for each request.

If you plan to exceed twenty managed paths in a given Web application, we recommend that you test for acceptable system performance.

Solution cache size300 MB per Web applicationThresholdThe solution cache allows the InfoPath Forms service to hold solutions in cache in order to speed up retrieval of the solutions. If the cache size is exceeded, solutions are retrieved from disk, which may slow down response times. You can configure the size of the solution cache by using the Windows PowerShell cmdlet Set-SPInfoPathFormsService. For more information, see Set-SPInfoPathFormsService [ http://technet.microsoft.com/en-au/library/ff608034.aspx ] .

Web server and application server limits

The following table lists the recommended guidelines for Web servers on the farm.

LimitMaximum valueLimit typeNotes
Application pools10 per Web serverSupportedThe maximum number is determined by hardware capabilities.

This limit is dependent largely upon:

  • The amount of RAM allocated to the Web servers
  • The workload that the farm is serving, that is, the user base and the usage characteristics (a single highly active application pools can reach 10 GB or more)

Content database limits

The following table lists the recommended guidelines for content databases.

LimitMaximum valueLimit typeNotes
Content database size200 GB per content databaseSupportedWe strongly recommended limiting the size of content databases to 200 GB to help ensure system performance.

Content database sizes up to 1 terabyte are supported only for large, single-site repositories and archives with non-collaborative I/O and usage patterns, such as Records Centers. Larger database sizes are supported for these scenarios because their I/O patterns and typical data structure formats have been designed for, and tested at, larger scales. For more information about large-scale document repositories, see “Estimate Performance and Capacity Requirements for Large Scale Document Repositories”, available fromPerformance and capacity test results and recommendations (SharePoint Server 2010) [ http://technet.microsoft.com/en-au/library/ff608068.aspx ] , and “Typical large-scale content management scenarios [ http://technet.microsoft.com/en-au/library/cc263028.aspx ] “, available fromEnterprise content storage planning (SharePoint Server 2010) [ http://technet.microsoft.com/en-au/library/cc263028.aspx ] .

A site collection should not exceed 100 GB unless it is the only site collection in the database.

Site collections per content database2,000 recommended

5,000 maximum

SupportedWe strongly recommended limiting the number of site collections in a content database to 2,000. However, up to 5,000 site collections in a database are supported.

These limits relate to speed of upgrade. The larger the number of site collections in a database, the slower the upgrade.

The limit on the number of site collections in a database is subordinate to the limit on the size of a content database that has more than one site collection (200 GB). Therefore, as the number of site collections in a database increases, the average size of the site collections it contains must decrease.

Exceeding the 2,000 site collection limit puts you at risk of longer downtimes during upgrades. If you plan to exceed 2,000 site collections, we recommend that you have a clear upgrade strategy, and obtain additional hardware to speed up upgrades and software updates that affect databases.

To set the warning level for the number of sites in a content database, use the Windows PowerShell cmdlet Set-SPContentDatabase with the -WarningSiteCount parameter. For more information, see Set-SPContentDatabase [ http://technet.microsoft.com/en-au/library/ff607912.aspx ] .

Remote BLOB Storage (RBS) storage subsystem on Network Attached Storage (NAS)Time to first byte of any response from the NAS cannot exceed 20 millisecondsBoundaryWhen SharePoint Server 2010 is configured to use RBS, and the BLOBs reside on NAS storage, consider the following boundary.

From the time that SharePoint Server 2010 requests a BLOB, until it receives the first byte from the NAS, no more than 20 milliseconds can pass.

Site collection limits

The following table lists the recommended guidelines for site collections.

LimitMaximum valueLimit typeNotes
Web site250,000 per site collectionSupportedThe maximum recommended number of sites and subsites is 250,000 sites.

You can create a very large total number of Web sites by nesting subsites. For example, in a shallow hierarchy with 100 sites, each with 1,000 subsites, you would have a total of 100,000 Web sites. Or a deep hierarchy with 100 sites, each with 10 subsite levels would also contain a total of 100,000 Web sites.

Note: Deleting or creating a site or subsite can significantly affect a site’s availability. Access to the site and subsites will be limited while the site is being deleted. Attempting to create many subsites at the same time may also fail.

Site collection size100 GB per site collectionSupportedA site collection should not exceed 100 GB unless it is the only site collection in the database.

Certain site collection actions, such as site collection backup/restore or the Windows PowerShell cmdlet Move-SPSite, cause large Microsoft SQL Server operations which can affect performance or fail if other site collections are active in the same database. For more information, see Move-SPSite [ http://technet.microsoft.com/en-au/library/ff607915.aspx ] .

List and library limits

The following table lists the recommended guidelines for lists and libraries. For more information, see the “Designing Large Lists and Maximizing List Performance” white paper available from Performance and capacity test results and recommendations (SharePoint Server 2010) [ http://technet.microsoft.com/en-au/library/ff608068.aspx ] .

LimitMaximum valueLimit typeNotes
List row size8,000 bytes per rowBoundaryEach list or library item can only occupy 8000 bytes in total in the database. 256 bytes are reserved for built-in columns, which leaves 7744 bytes for end-user columns. For details on how much space each kind of field consumes, see Column limits.
File size2 GBBoundaryThe default maximum file size is 50 MB. This can be increased up to 2 GB, however a large volume of very large files can affect farm performance.
Documents30,000,000 per librarySupportedYou can create very large document libraries by nesting folders, or using standard views and site hierarchy. This value may vary depending on how documents and folders are organized, and by the type and size of documents stored.
Major versions400,000SupportedIf you exceed this limit, basic file operations—such as file open or save, delete, and viewing the version histor— may not succeed.
Items30,000,000 per listSupportedYou can create very large lists using standard views, site hierarchies, and metadata navigation. This value may vary depending on the number of columns in the list and the usage of the list.
Rows size limit6 table rows internal to the database used for a list or library itemSupportedSpecifies the maximum number of table rows internal to the database that can be used for a list or library item. To accommodate wide lists with many columns, each item may be wrapped over several internal table rows, up to six rows by default. This is configurable by farm administrators through the object model only. The object model method isSPWebApplication.MaxListItemRowStorage [ http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.spwebapplication.maxlistitemrowstorage.aspx ] .
Bulk operations100 items per bulk operationBoundaryThe user interface allows a maximum of 100 items to be selected for bulk operations.
List view lookup threshold8 join operations per queryThresholdSpecifies the maximum number of joins allowed per query, such as those based on lookup, person/group, or workflow status columns. If the query uses more than eight joins, the operation is blocked. This does not apply to single item operations. When using the maximal view via the object model (by not specifying any view fields), SharePoint will return up to the first eight lookups.
List view threshold5,000ThresholdSpecifies the maximum number of list or library items that a database operation, such as a query, can process at the same time outside the daily time window set by the administrator during which queries are unrestricted.
List view threshold for auditors and administrators20,000ThresholdSpecifies the maximum number of list or library items that a database operation, such as a query, can process at the same time when they are performed by an auditor or administrator with appropriate permissions. This setting works with Allow Object Model Override.
Subsite2,000 per site viewThresholdThe interface for enumerating subsites of a given Web site does not perform well as the number of subsites surpasses 2,000. Similarly, the All Site Content page and the Tree View Control performance will decrease significantly as the number of subsites grows.
Coauthoring in Microsoft Word and Microsoft PowerPoint for .docx, .pptx and .ppsx files10 concurrent editors per documentThresholdRecommended maximum number of concurrent editors is 10. The boundary is 99.

If there are 99 co-authors who have a single document opened for concurrent editing, any user after the 100th user sees a “File in use” error and have to view a read-only copy.

More than 10 co-editors will lead to a gradually degraded user experience with more conflicts and users will have to go through more iterations to get their changes to upload successfully.

Security scope1,000 per listThresholdThe maximum number of unique security scopes set for a list should not exceed 1,000.

A scope is the security boundary for a securable object and any of its children that do not have a separate security boundary defined. A scope contains an Access Control List (ACL), but unlike NTFS ACLs, a scope can include security principals that are specific to SharePoint Server. The members of an ACL for a scope can include Windows users, user accounts other than Windows users (such as forms-based accounts), Active Directory groups, or SharePoint groups.

Security limits

LimitMaximum valueLimit typeNotes
Number of SharePoint groups a user can belong to5,000SupportedThis is not a hard limit but it is consistent with Active Directory guidelines. There are several things that affect this number:

  • The size of the user token
  • The groups cache: SharePoint Server 2010 has a table that caches the number of groups a user belongs to as soon as those groups are used in access control lists (ACLs).
  • The security check time: as the number of groups that a user is a member of increases, the time that is required for the access check increases also.
Users in a site collection2 million per site collectionSupportedYou can add millions of people to your Web site by using Microsoft Windows security groups to manage security instead of using individual users.

This limit is based on manageability and ease of navigation in the user interface.

When you have many entries (security groups of users) in the site collection (more than one thousand), you should use Windows PowerShell to manage users instead of the UI. This will provide a better management experience.

Active Directory Principles/Users in a SharePoint group5,000 per SharePoint groupSupportedSharePoint Server 2010 enables you to add users or Active Directory groups to a SharePoint group.

Having up to 5,000 users (or Active Directory groups or users) in a SharePoint group provides acceptable performance.

The activities most affected by this limit are as follows:

  • Fetching users to validate permissions. This operation takes incrementally longer with growth in number of users in a group.
  • Rendering the membership of the view. This operation will always require time.
SharePoint groups10,000 per site collectionSupportedAbove 10,000 groups, the time to execute operations is increased significantly. This is especially true of adding a user to an existing group, creating a new group, and rendering group views.
Security principal: size of the Security Scope5,000 per Access Control List (ACL)SupportedThe size of the scope affects the data that is used for a security check calculation. This calculation occurs every time that the scope changes. There is no hard limit, but the bigger the scope, the longer the calculation takes.

Search limits

The following table lists the recommended guidelines for Search.

LimitMaximum valueLimit typeNotes
SharePoint search service applications20 per farmSupportedMultiple SharePoint search service applications can be deployed on the same farm, because you can assign search components and databases to separate servers. The recommended limit of 20 is less than the maximum limit for all service applications in a farm.
Crawl databases and database Items10 crawl databases per search service application

25 million items per crawl database

ThresholdThe crawl database stores the crawl data (time/status, etc) about all items that have been crawled. The supported limit is 10 crawl databases per SharePoint Search service application.

The recommended limit is 25 million items per crawl database (or a total of four crawl databases per search service application).

Crawl components16 per search service applicationThresholdThe recommended limit per application is 16 total crawl components; with two per crawl database, and two per server, assuming the server has at least eight processors (cores).

The total number of crawl components per server must be less than 128/(total query components) to minimize propagation I/O degradation. Exceeding the recommended limit may not increase crawl performance; in fact, crawl performance may decrease based on available resources on the crawl server, database, and content host.

Index partitions20 per search service application; 128 totalThresholdThe index partition holds a subset of the search service application index. The recommended limit is 20. Increasing the number of index partitions results in each partition holding a smaller subset of the index, reducing the RAM and disk space that is needed on the query server hosting the query component assigned to the index partition. The boundary for the total number of index partitions is 128.
Indexed items100 million per search service application; 10 million per index partitionSupportedSharePoint Search supports index partitions, each of which contains a subset of the search index. The recommended maximum is 10 million items in any partition. The overall recommended maximum number of items (e.g., people, list items, documents, Web pages) is 100 million.
Crawl log entries100 million per search applicationSupportedThis is the number of individual log entries in the crawl log. It will follow the “Indexed items” limit.
Property databases10 per search service application;128 totalThresholdThe property database stores the metadata for items in each index partition associated with it. An index partition can only be associated with one property store. The recommended limit is 10 property databases per search service application. The boundary for index partitions is 128.
Query components128 per search application; 64/(total crawl components) per serverThresholdThe total number of query components is limited by the ability of the crawl components to copy files. The maximum number of query components per server is limited by the ability of the query components to absorb files propagated from crawl components.
Scope rules100 scope rules per scope; 600 total per search service applicationThresholdExceeding this limit will reduce crawl freshness, and delay potential results from scoped queries.
Scopes200 per siteThresholdThis is a recommended limit per site. Exceeding this limit may reduce crawl efficiency and, if the scopes are added to the display group, affect end-user browser latency. Also, display of the scopes in the search administration interface degrades as the number of scopes passes the recommended limit.
Display groups25 per siteThresholdDisplay groups are used for a grouped display of scopes through the user interface. Exceeding this limit starts degrading the scope experience in the search administration interface.
Alerts1,000,000 per search applicationSupportedThis is the tested limit.
Content sources50 per search service applicationThresholdThe recommended limit of 50 can be exceeded up to the boundary of 500 per search service application. However, fewer start addresses should be used, and the concurrent crawl limit must be followed.
Start addresses100 per content sourceThresholdThe recommended limit can be exceeded up to the boundary of 500 per content source. However, the more start addresses you have, the fewer content sources should be used. When you have many start address, we recommend that you put them as links on an html page, and have the HTTP crawler crawl the page, following the links.
Concurrent crawls20 per search applicationThresholdThis is the number of crawls underway at the same time. Exceeding this number may cause the overall crawl rate to decrease.
Crawled properties500,000 per search applicationSupportedThese are properties that are discovered during a crawl.
Crawl impact rule100ThresholdRecommended limit of 100 per farm. The recommendation can be exceeded; however, display of the site hit rules in the search administration interface is degraded. At approximately 2000 site hit rules, the Manage Site Hit Rules page becomes unreadable.
Crawl rules100 per search service applicationThresholdThis value can be exceeded; however, display of the crawl rules in the search administration interface is degraded.
Managed properties100,000 per search service applicationThresholdThese are properties used by the search system in queries. Crawled properties are mapped to managed properties.
Mappings100 per managed propertyThresholdExceeding this limit may decrease crawl speed and query performance.
URL removals100 removals per operationSupportedThis is the maximum recommended number of URLs that should be removed from the system in one operation.
Authoritative pages1 top level and minimal second and third level pages per search service applicationThresholdThe recommended limit is one top-level authoritative page, and as few second -and third-level pages as possible to achieve the desired relevance.

The boundary is 200 per relevance level per search application, but adding additional pages may not achieve the desired relevance. Add the key site to the first relevance level. Add more key sites at either second or third relevance levels, one at a time, and evaluate relevance after each addition to ensure that the desired relevance effect is achieved.

Keywords200 per site collectionSupportedThe recommended limit can be exceeded up to the maximum (ASP.NET-imposed) limit of 5000 per site collection given five Best Bets per keyword. If you exceed this limit, display of keywords on the site administration user interface will degrade. The ASP.NET-imposed limit can be modified by editing the Web.Config and Client.config files (MaxItemsInObjectGraph).
Metadata properties recognized10,000 per item crawledBoundaryThis is the number of metadata properties that can be determined and potentially mapped or used for queries when an item is crawled.

User Profile Service limits

The following table lists the recommended guidelines for User Profile Service.

LimitMaximum valueLimit typeNotes
User profiles2,000,000 per service applicationSupportedA user profile service application can support up to 2 million user profiles with full social features functionality. This number represents the number of profiles that can be imported into the people profile store from a directory service, and also the number of profiles a user profile service application can support without leading to performance decreases in social features.
Social tags, notes and ratings500,000,000 per social databaseSupportedUp to 500 million total social tags, notes and ratings are supported in a social database without significant decreases in performance. However, database maintenance operations such as backup and restore may show decreased performance at that point.

Content deployment limits

The following table lists the recommended guidelines for content deployment.

LimitMaximum valueLimit typeNotes
Content deployment jobs running on different paths20SupportedFor concurrently running jobs on paths that are connected to site collections in the same source content database, there is an increased risk of deadlocks on the database. For jobs that must run concurrently, we recommend that you move the site collections into different source content databases.

Note:

Concurrent running jobs on the same path are not possible.

If you are using SQL Server snapshots for content deployment, each path creates a snapshot. This increases the I/O requirements for the source database.

For more information, see About deployment paths and jobs [ http://technet.microsoft.com/en-au/library/ee721058.aspx ] .

Blog limits

The following table lists the recommended guidelines for blogs.

LimitMaximum valueLimit typeNotes
Blog posts5000 per siteSupportedThe maximum number of blog posts is 5000 per site.
Comments1000 per postSupportedThe maximum number of comments is 1000 per post.

Managed Metadata term store (database) limits

The following table lists the recommended guidelines for managed metadata term stores.

LimitMaximum valueLimit typeNotes
Maximum number of levels of nested terms in a term store7SupportedTerms in a term set can be represented hierarchically. A term set can have up to seven levels of terms (a parent term, and six levels of nesting below it.)
Maximum number of term sets in a term store1000SupportedYou can have up to 1000 term sets in a term store.
Maximum number of terms in a term set30,000Supported30,000 is the maximum number of terms in a term set.

Note:

Additional labels for the same term, such as synonyms and translations, do not count as separate terms.

Total number of items in a term store1,000,000SupportedAn item is either a term or a term set. The sum of the number of terms and term sets cannot exceed 1,000,000. Additional labels for the same term, such as synonyms and translations, do not count as separate terms.

Note:

You cannot have both the maximum number of term sets and the maximum number of terms simultaneously in a term store.

Taken from:
http://technet.microsoft.com/en-au/library/cc262787.aspx

No comments: