一个列表或库中最多可以存储 3000 万个项目或文件。 但是,随着项数量的增加,你可能会注意到某些操作需要更长的时间。 大型列表的筛选视图具有与其他列表类似的体验。 当列表视图显示超过 5,000 个项目时,可能会遇到列表视图阈值错误。 在列表或库超过列表视图阈值 (LVT) 5000 个项目的网站上,阻止创建网站模板。 显示许多项的视图在现代体验中效果最佳。 为了避免在经典体验中看到的错误,我们建议 使用新式体验。
“列表视图阈值 (LVT) 限制已到位,以帮助所有用户通过查询后端数据库获得一致的性能。 下面是有关限制、一切工作原理以及如何更改 LVT 值的一些信息。
为什么是 5,000 这样一个幻数?
为最小化数据库争用 SQL Server,SharePoint 的后端数据库常使用行级锁定作为策略以确保更新的准确性,而不会对正在访问其他行的其他用户造成不利影响。 然而,如果写入或读取操作(例如查询)使得一次锁定的行数超过 5,000,更有效的做法是:在数据库操作完成前,SQL Server 暂时锁定整个表。
注意
实际的数目并不一定是 5,000,具体取决于站点情况、数据库中的活动数以及站点的配置。
锁定整个表时,会阻止其他用户访问该表。 如果这种情况发生得太频繁,用户将体验到系统性能的下降。 因此,在最小化资源密集型数据库操作的影响和平衡所有用户的需求上,阈值和限制至关重要。
当您访问列表或库中的许多项目时后台发生什么情况?
下图汇总了当您访问列表或库中的许多项目时后台发生的情况的要点。
- 网站集中的列表或库数据存储在SQL Server数据库表中,该表使用查询、索引和锁来保持整体性能、共享和准确性。
- 具有列索引(和其他操作)的筛选视图可创建识别列和行的子集,并将此返回计算机的数据库查询。
- 对于同时进行操作的多个用户,阈值和限制有助于限制操作和平衡资源。
- 对于具有 SharePoint 服务器版本的自定义应用程序,特权开发人员可使用对象模型替代暂时增加其阈值和限制。
- 通过 SharePoint 服务器版本,管理员可为所有用户指定一个专用时间段,在非高峰时间进行无限制的操作。
- 信息工作者可使用合适的视图、样式和页面限制提高页面上显示数据的速度。
资源阻止和限制
列表和库具有特定的最大限制,如此表所示。
| 功能 | 最大限制 |
|---|---|
| 列表或库中的项目数量 | 3 千万 |
| 单个文件项目或项目附件的大小 | 10 GB |
下表总结了需要注意的有关资源限制和上限的信息。 这些这些限制和上限是在管理中心中的“资源限制”页中使用 SharePoint 的服务器版本设置的。 有关站点的特定限制和请求,请与管理员联系。
注意
- 为了帮助管理,管理员不受下列资源阻止和限制的约束。
- 并非所有这些设置都通过 UI 提供(仅适用于 SharePoint 服务器版本)。
| 阈值或上限 | 默认值 | 说明 |
|---|---|---|
| 列表视图阈值 | 5,000 | 指定数据库操作(如查询)一次可以处理的列表或库项目的最大数量。 超过此限制的操作将被阻止。 若要让你有时间制定替代计划,当列表项超过 3,000 项时,可能会在“列表设置”页上发出警告。 警告包含本主题的帮助链接。 |
| 唯一权限限制 | 50,000 | 指定允许列表或库使用的唯一权限的最大数量。 每次中断项目或文件夹的权限继承时,都会将此限制视为 1 个唯一权限。 如果尝试添加的项会导致超过此限制,则无法执行此操作。 注意: 列表或库中项的唯一权限支持限制为 50,000。 但是,建议的一般限制为 5,000。 |
| 行大小限制 | 6 | 指定用于列表或库项目的数据库内部表行的最大数量。 为了适应含许多栏的宽型列表,每个项目都会在几个内部表行上换行,最多可有 6 行,总计 8,000 字节(不包括附件)。 例如,如果你有一个包含许多小列的列表,其中一个包含数百个“是/否”列,则可以超过此限制,在这种情况下,无法向列表添加更多“是/否”列,但仍可能允许添加不同类型的列。 管理员只能使用对象模型设置此限制,而不能通过用户界面设置。 注意: SharePoint Online 不使用行换行,因此此特定限制不适用。 但是,根据列的存储大小,列数仍存在总体限制,最大限制为 8000。 |
| 列表视图查找阈值 | 1.2 | 指定连接操作(如基于查找、个人/组或工作流状态栏的操作)的最大数量。 如果查询使用超过 8 列,则会阻止该操作。 但是,可以使用最大视图(可通过对象模型设置)以编程方式选择要使用的列。 |
| 审核员和管理员的列表视图阈值大小 | 20,000 | 指定审核员或具有适当权限的管理员执行的数据库操作(如查询)一次可以处理的列表或库项目的最大数量。 此设置与“允许对象模型替代”结合使用。 |
| 允许对象模型替代 | 是 | 指定开发人员是否可以执行数据库操作(如查询),这些操作请求列表 视图阈值 的替代,以达到 审核员和管理员列表视图阈值指定的更高限制。 管理员必须启用对象模型替代,然后具有适当权限的开发人员可能会以编程方式请求其查询使用更高的列表视图阈值来利用它。 |
| 每日时间段 | 无 | 指定一个时间段,在该时间段内,将忽略资源阈值和限制。 管理员可以在“非高峰”时段以 15 分钟为增量,最多 24 小时(例如下午 6:00 到 10:00 或凌晨 1:30 到 5:15)配置时间窗口。 在每日时间段内启动的数据库操作和查询将继续进行,直到完成(或失败),即使它无法在指定的时间段内完成也是如此。 |
使用列表视图阈值限制
SharePoint 具有资源限制和上限,可控制可托管的数据量和吞吐量。 默认情况下,列表视图阈值大约为 5,000 个项目,并且设置为允许用户使用大型列表,但保持良好的性能。 对于 SharePoint,列表视图阈值限制无法更改,并且已到位,以允许共享租户上的用户始终在查询上保持良好性能。 为应对此限制,我们列出了几种操作,可使查询位于限制内。
你可以采用多种方法,或者查询 SharePoint 列表或库,且不会收到列表视图阈值警告。 使用以下想法,可以获取所需的信息,并保持在 5,000 项列表视图阈值内。
- 对于所有版本的 SharePoint,请使用索引、筛选、文件夹、脱机数据、搜索框、个人视图、关系列表和 RSS 源来管理返回的项目数。
- 对于 SharePoint 服务器版本,使用管理员安排的每日时间段,此时上限有所提高。
- 对于 SharePoint 的服务器版本,SharePoint 服务器 管理员可以调整设置以允许更昂贵的操作。 在此处了解详细信息。
在此处了解有关所有 SharePoint 版本和 SharePoint 服务器 版本的这些方法的更多详细信息。 在此处详细了解如何使用具有大量查阅列的列表窗体。