您可以在清單或文件庫中儲存多達 3000 萬個項目或檔案。 不過,隨著項目數量的增加,您可能會注意到某些作業需要更長的時間。 大型清單的篩選檢視與其他清單具有類似的體驗。 當清單檢視顯示超過 5,000 個項目時,您可能會遇到清單檢視閾值錯誤。 在清單或文件庫超過清單檢視閾值 (LVT) 5,000 個項目的網站上,會封鎖網站範本的建立。 顯示許多項目的檢視在新式體驗中效果最佳。 若要避免在傳統體驗中看到的錯誤,建議您 使用新式體驗。
LVT 限制可協助所有查詢到後端資料庫的使用者獲得一致的效能。 以下是有關限制、運作方式以及如何變更 LVT 值的一些資訊。
為何 5,000 是個神奇數字?
為了將資料庫爭用降至最低,SharePoint 的後端資料庫 SQL Server 通常使用資料列層級鎖定作為策略,以確保準確更新,而不會對存取其他資料列的其他使用者造成負面影響。 不過,如果讀取或寫入資料庫作業 (例如查詢) 導致一次鎖定超過 5,000 個列,比較有效率的方式是讓 SQL Server 暫時鎖定整個資料表直到資料庫作業完成為止。
注意
實際數字不一定為 5,000,而且可能會根據您的網站、資料庫中的活動量和網站的設定而有所不同。
當整個資料表遭到鎖定時,它會阻止其他使用者存取資料表。 如果這種情況發生過於頻繁,使用者將體驗到系統效能下降的情況。 因此,若要協助將耗用大量資源的資料庫作業之影響降到最低並平衡所有使用者的需求,臨界值和限制是不可或缺的。
當您存取清單或文件庫中的眾多項目時,其背後是如何運作?
下表摘要列出重點,說明存取清單或文件庫中的許多項目時的幕後狀況。
螢幕
- 網站集合中的清單或文件庫資料會儲存在 SQL Server 資料庫資料表中,而資料表會使用查詢、索引和鎖定來維持整體效能、共用和正確性。
- 含有欄索引之篩選的檢視 (及其他作業) 會建立資料庫查詢,這會識別欄和列的子集並將此子集傳回到您的電腦。
- 臨界值和限制有助於節流作業及平衡多位同步使用者的資源。
- 特殊權限的開發人員可以使用物件模型覆寫,暫時增加 SharePoint Server 版本中的自訂應用程式之臨界值和限制。
- 系統管理員可以指定所有使用者的專用時間範圍,以於離峰時段期間在 SharePoint Server 版本中執行無限制的作業。
- 資訊工作者可以使用適當的檢視、樣式及頁面限制,來加速頁面上的資料顯示。
資源節流和限制
清單和文件庫具有特定的上限 (如下表所示)。
| 功能 | 最大限制 |
|---|---|
| 清單或文件庫中的項目數 | 3 千萬 |
| 個別檔案項目或項目附件的大小 | 10 GB |
下表摘要說明您需要注意的資源節流和限制相關資訊。 這些節流和限制是在 SharePoint Server 版本之管理中心的 [資源節流] 頁面上設定。 如需網站的特定限制和要求,請連絡您的系統管理員。
注意
- 為了協助管理,系統管理員不受限於下列的資源節流與限制。
- 這些設定並非都只能透過 UI 使用且僅適用於 SharePoint Server 版本。
| 臨界值或限制 | 預設值 | 描述 |
|---|---|---|
| 清單檢視閥值 | 5,000 | 指定資料庫作業 (例如查詢) 一次可以處理的清單或文件庫項目數上限。 超出此限制的作業將遭到封鎖。 為了讓您有時間制定替代計劃,當您的清單超過 3,000 個項目時,您可能會在 [清單設定] 頁面上收到警告。 這則警告包含此主題的說明連結。 |
| 唯一權限限制 | 50,000 | 指定清單或文件庫所允許唯一權限的數目上限。 每當您中斷項目或資料夾的權限繼承時,都會對此限制計為 1 個唯一權限。 如果您嘗試新增會導致超過此限制的項目,您將無法這麼做。 注意: 清單或文件庫中項目支援的唯一權限限制為 50,000 個。 不過,建議的一般限制為 5,000 個。 |
| 列大小限制 | 6 | 指定用於清單或文件庫項目的資料庫內部之資料表列數上限。 為了容納包含許多欄的較寬清單,每個項目都會跨數個內部資料表列自動換行,最多達 6 列,且最多共 8,000 個位元組 (不含附件)。 例如,如果您的清單包含許多小欄,其中包含數百個 [是/否] 欄,則可能會超過此限制,在這種情況下,您將無法在清單中新增更多 [是/否] 欄,但您仍然可以新增不同類型的欄。 管理員只能使用物件模型設定此項限制,而不能透過使用者介面加以設定。 注意: SharePoint Online 不使用列換行,因此不適用此特定限制。 不過,根據儲存體大小,欄數仍有整體限制,最多為 8,000 個。 |
| 清單檢視查閱閥值 | 12 | 指定 JOIN 運算的數目上限,例如根據查閱、人員/群組或工作流程狀態欄等的運算。 如果查詢使用 8 個以上的欄,則會封鎖該作業。 不過,您可以使用 [最大檢視],以程式設計方式選取要使用的欄,這可以透過物件模型進行設定。 |
| 稽核者與管理員的清單檢視閥值大小 | 20,000 | 指定由具有適當權限的稽核者或系統管理員所執行之資料庫作業 (例如查詢),一次可以處理的清單或文件庫項目數上限。 此項設定可搭配 [允許物件模型覆寫] 使用。 |
| 允許物件模型覆寫 | Y | 指定開發人員是否可以執行資料庫作業,例如查詢,要求將 [清單檢視閾值 ] 覆寫為 稽核員和系統管理員的 [清單檢視閾值] 所指定的上限。 系統管理員必須啟用物件模型覆寫,然後具有適當許可權的開發人員可能會以程式設計方式要求其查詢使用較高的 LVT 來利用它。 |
| 每日時間範圍 | 無 | 指定略過資源閥值及限制的時間範圍。 系統管理員可以在「離峰」時段設定時段,增量為 15 分鐘,最多 24 小時,例如下午 6:00 到晚上 10:00 或上午 1:30 到早上 5:15。 即使未在指定時間範圍內完成,在每日時間範圍內啟動的資料庫作業或查詢還是會一直繼續到完成 (或失敗)。 |
使用 [清單檢視臨界值] 限制
SharePoint 具有資源節流和限制,可掌管資料量和可管理的輸送量。 根據預設,LVT 大約有 5,000 個項目,並設定為允許使用者使用大型清單,但能保持良好的效能。 針對 SharePoint,無法變更 LVT 限制,這是為了讓共用租用戶的使用者在查詢上永遠有良好的效能。 為因應限制,我們列出一些您可採取的行動之大綱,以讓您的查詢保持在限制之內。
有許多方法可以使用或查詢 SharePoint 清單或文件庫,而不會收到 LVT 警告。 使用以下想法,您可以獲得所需的資訊並保持在 5,000 件商品 LVT 範圍內。
- 針對所有版本的 SharePoint,請使用索引、篩選、資料夾、離線資料、[搜尋] 方塊、個人檢視、關聯式清單和 RSS 摘要來管理傳回的項目數量。
- 針對 SharePoint Server 版本,在提高限制之處使用系統管理員排定的每日時間範圍。
- 針對 SharePoint 伺服器版本,SharePoint Server 管理員可以調整設定,以允許更昂貴的作業。 請在這裡深入了解相關資訊。
在這裡,針對所有 SharePoint 版本以及針對 SharePoint Server 版本,進一步瞭解這些方法的詳細資料。 在這裡深入了解如何使用具有大量查閱欄的清單表單。