決定在 SharePoint Server 中使用 RBSDeciding to use RBS in SharePoint Server

摘要: 概述在 SharePoint Server 2016 和 SharePoint 2013 環境中使用遠端 BLOB 儲存 (RBS) 的成本與效益。Summary: Outlines the costs and benefits of using Remote BLOB Storage (RBS) in a SharePoint Server 2016 and SharePoint 2013 environment.

本文所提供之資訊有助於您決定是否要在 SharePoint Server 環境中使用遠端 BLOB 儲存 (RBS),以了解使用 RBS 的效益和成本。This article provides information to help you decide whether to use Remote BLOB Storage (RBS) in a SharePoint Server environment, and to understand the benefits and costs of using RBS.

重要

RBS 不會增加內容資料庫的儲存限制。所有限制仍然適用於啟用 RBS 的內容資料庫。RBS 旨在讓您在費用較低的磁碟上儲存大量讀取的 BLOB,以降低儲存成本。例如,如果您有 150GB 的 RBS 資料,還有一個 70GB 的內容資料庫,這樣仍超過限制。RBS does not increase the storage limits of content databases. All limitations still apply to RBS-enabled content databases. RBS is intended to lower storage costs by allowing you to store large read-intensive BLOBs on less expensive drives. For example, if you have 150 GB of RBS data and you have a content database that is 70 GB, this still exceeds the limits.

在 SharePoint Server 中,二進位大型物件 (BLOB) 是一個檔案,例如 Microsoft Office 文件或視訊檔。這些 BLOB 又稱為「無結構資料」,預設會與中繼資料 (或稱為「結構化資料」) 一起儲存在 SharePoint 內容資料庫內。由於 BLOB 可能非常龐大,因此將 BLOB 資料移出 SQL Server 資料庫,然後移入市售儲存裝置或內容可定址儲存裝置將有所助益。若要達成這個目的,您可以使用 RBS。In SharePoint Server, a binary large object (BLOB) is a file, such as a Microsoft Office document or a video file. By default, these BLOBs, also named unstructured data, are stored inline in the SharePoint content database together with the metadata, or structured data. Because BLOBs can be very large, it can be helpful to move BLOB data out of the SQL Server database, and onto commodity or content addressable storage. To do this, you can use RBS.

注意

除非另有指定,否則本文中的資訊只針對使用 FILESTREAM 提供者的 RBS。如需其他提供者特定的指導,請連絡提供者製造商。Unless otherwise specified, the information in this article is specific to RBS using the FILESTREAM provider. For guidance specific to another provider, contact the provider manufacturer.

如需 RBS 的詳細資訊 (包括 RBS 提供者的資訊),強烈建議您先閱讀文章<SharePoint Server 中的 RBS 概觀>。For more information about RBS including information about RBS providers, we highly recommend that you see Overview of RBS in SharePoint Server.

RBS 的限制Limitations of RBS

每個 RBS 提供者都有不同的功能和限制。FILESTREAM 提供者具有下列限制:Each RBS provider has different capabilities and limitations. The FILESTREAM provider has the following limitations:

  • 針對特定案例,RBS 會有特定的內容資料庫大小限制。如需有關這些限制的詳細資訊,請參閱<SharePoint 2013 的軟體界限及限制>中的<內容資料庫限制>一節和<內容資料庫限制>。RBS has specific content database size limits for specific scenarios. For more information about these limitations, see the "Content database limits" section in Software boundaries and limits for SharePoint 2013 and Content database limits.

  • 即使啟用了透明資料加密功能,BLOB 上也不支援加密。Encryption is not supported on BLOBs, even if Transparent Data Encryption is enabled.

  • RBS 不支援使用資料壓縮。RBS does not support using data compression.

  • 已修改對資料庫鏡像和記錄傳送的支援。如需詳細資訊,請參閱本文稍後的<評估提供者選項>。Support for database mirroring and log shipping is altered. For more information, see Evaluate provider options later in this article.

若要瞭解協力廠商提供者的功能和限制,請連絡提供者製造商。To determine the capabilities and limitations of third-party providers, contact the provider manufacturer.

RBS 的最佳使用方式Optimal use of RBS

由於 RBS 是專為特定情況所建立的解決方案,因此會有一個使用 RBS 的重點是效益勝過成本的。使用 RBS 的最佳環境是符合下列條件的環境:Because RBS is a solution created for a specific set of conditions, there is point at which the benefits of using RBS outweigh the costs. The optimal environment for using RBS is one in which the following conditions are true:

  • 您想要儲存較少的大型 BLOB (256 KB 或更大) 以進行大量讀取或唯讀存取。You want to store fewer large BLOBs (256 KB or larger) for read-intensive or read-only access.

  • 執行 SQL Server 的電腦資源可能會成為效能瓶頸。The resources on the computer that is running SQL Server might become a performance bottleneck.

  • 高價磁碟機空間的費用遠超過使用 RBS 所增加的 IT 作業複雜度費用。The expense of high-cost drive space is greater than the expense of increased IT operational complexity that the use of RBS might be introduce.

低效率的 RBS 使用方式Least effective use of RBS

RBS 不是適用於所有環境的解決方案,因為在特定環境中,成本會超過效益。最不適合使用 RBS 的環境是符合下列條件的環境:RBS is not a good solution for all environments because, in specific environments, the costs will outweigh the benefits. The least beneficial environment for using RBS is one where the following conditions are true:

  • 您想要儲存許多小型 BLOB (256 KB 或更小) 以進行大量寫入存取。You want to store many small BLOBs (256 KB or less) for write-intensive access.

  • 執行 SQL Server 的電腦資源不是為效能瓶頸。The resources on the computer that is running SQL Server are not a performance bottleneck.

  • 使用 RBS 所增加的 IT 作業複雜度費用遠超過高價磁碟機空間的費用。The expense of increased IT operational complexity that the use of RBS might introduce is greater than high-cost drive space.

在這些情況下,即使內容資料庫小於 200 GB,仍然會產生顯著的效能瓶頸,因為經常存取小型 BLOB 進行寫入。發生瓶頸的原因是資料庫包含 BLOB 的中繼資料。隨著中繼資料的變更,新的列會加入資料庫資料表,進而造成資料表快速變大,而大型資料表會降低效能。Under these conditions, even a content database that is less than 200 GB will produce a noticeable performance bottleneck as the small BLOBs are frequently accessed for writing. The bottleneck occurs because the database contains the metadata for the BLOBs. As the metadata is changed, new rows are added to the table in the database. This can cause the table to quickly become very large and large tables can decrease performance.

雖然使用許多小型 BLOB 會降低效能,但是儲存成本通常才是評估是否使用 RBS 的最重要考量。與可節省的儲存硬體成本相比,預期的效能降低通常是可接受的代價。Although the presence of many small BLOBs can decrease performance, the cost of storage is usually the most important consideration when you evaluate RBS. The predicted decrease in performance is usually an acceptable trade-off for the cost savings in storage hardware.

在不同案例中使用 RBS 的影響Implications of using RBS in different scenarios

您應該評估在不同網站方案中使用 RBS 的影響。由於建立 RBS 是為了解決特定問題,因此 RBS 可能無法在所有情況中產生相同的效能。請參閱下列小節中的情況範例。You should evaluate the implications of using RBS in different site scenarios. Because RBS was created to resolve specific problems, RBS might not perform equally well in all situations. The situations in the following sections are examples.

小組網站Team sites

如果您考慮在小組網站或其他需要大量共同作業網站上使用 RBS,而這些網站通常包含小於 256 KB 的文件,則使用 RBS 並不會大幅提升效能。此外,由於會使用版本修訂,因此內容資料庫可能會因經常修訂文件而迅速增大。If you are considering using RBS with team sites or other highly-collaborative sites, and the sites typically contain documents smaller than 256 KB, you will not see significant gains by using RBS. Moreover, by using versioning, you can cause the content database to grow very quickly if documents are being revised frequently.

重要

啟用 RBS 的內容資料庫如果大於 200 GB,即無法搭配共同作業網站使用。您無法將大於 2 GB 的任何文件上傳至啟用 RBS 的內容資料庫。如需 RBS 限制的詳細資訊,請參閱<SharePoint 2013 的軟體界限及限制>中的<內容資料庫>一節和<內容資料庫限制>。The use of RBS-enabled content databases larger than 200GB with collaboration sites is not supported. You cannot upload any document larger than 2GB to an RBS-enabled content database. For more information about RBS limits, see the "Content database limits" section in Software boundaries and limits for SharePoint 2013 and Content database limits.

記錄中心Record centers

RBS 非常適用於記錄中心與其他封存網站。因為這些網站大部分都是唯讀網站,不使用版本修訂,所以可以在 RBS 儲存中存放大量資料。RBS works well for record centers and other archive sites. Because these sites are mostly read-only and do not use versioning, you can store lots of data in the RBS store.

使用 RBS 的效益與成本Benefits and costs of using RBS

本節討論使用 RBS 的效益與成本。這些效益與成本通常與您使用哪個提供者無關。如需如何使用 FILESTREAM RBS 提供者的詳細資訊,請參閱本文稍後的< 搭配 FILESTREAM 提供者使用 RBS 的效益與成本>。如需如何使用協力廠商 RBS 提供者的詳細資訊,請連絡提供者製造商。This section discusses the benefits and costs of using RBS. These benefits and costs usually apply regardless of which provider you use. For more detailed information about how to use the FILESTREAM RBS provider, see Benefits and costs of using RBS with the FILESTREAM provider later in this article. For more detailed information about how to use third-party RBS providers, contact the provider manufacturer.

效益Benefits

RBS 設計的目的在於將 BLOB 的儲存從資料庫伺服器上的資料庫移至市售儲存解決方案的目錄。因此,在不同使用 RBS 的特定環境中,您可以體驗到不同的效能或成本效益。使用較低價的儲存體來取代較昂貴的資料庫伺服器儲存體可節省成本。RBS 在擁有較少的大型 BLOB 時會節省儲存資源。如果有太多較小的檔案,則使用 RBS 並不會帶來任何效益。RBS was designed to move the storage of BLOBs from databases on database servers to directories on commodity storage solutions. Therefore, under the specific environments that RBS was intended to be used in, you can experience performance or cost benefits. By using lower-priced storage instead of more expensive storage on a databases server, you can save on costs. RBS saves storage resources when there are fewer large BLOBs. When there are many smaller files, there is no benefit.

成本Costs

RBS 會增加作業成本,因為 IT 人員在備份或還原內容時必須執行額外的工作。大型 RBS 儲存會減慢備份或還原、更新環境、升級至較新版本 SharePoint Server 或移轉 SharePoint 網站至另一個環境之類的工作。在您評估是否使用 RBS 時,應將這些成本列入考慮。RBS will increase operational costs because the IT staff must perform additional tasks when they back up or restore the content. Large RBS stores can slow down tasks such as backup or restore, updating the environment, upgrading to a newer version of SharePoint Server, or migrating the SharePoint sites to another environment. These costs should be considered when you evaluate whether to use RBS.

搭配 FILESTREAM 提供者使用 RBS 的效益與成本Benefits and costs of using RBS with the FILESTREAM provider

本節討論使用 FILESTREAM 提供者的效益與成本。這些效益與成本可能不適用於其他提供者。如需如何使用協力廠商 RBS 提供者的詳細資訊,請連絡提供者製造商。This section discusses the benefits and costs of using the FILESTREAM provider. These benefits and costs might not be relevant for another provider. For information about how to use third-party RBS providers, contact the provider manufacturer.

效益Benefits

Microsoft 目前僅支援 FILESTREAM RBS 提供者與 SharePoint Server 搭配使用。使用此提供者時,SharePoint Server 中的備份與還原功能也會備份和還原 BLOB 以及內容資料庫中的結構化資料,您不需執行額外的工作。FILESTREAM 提供者也支援 Internet Small Computer System Interface (iSCSI) 連線的儲存裝置。如需詳細資訊,請參閱<FILESTREAM 與其他 SQL Server 功能的相容性>。Microsoft currently supports only the FILESTREAM RBS provider with SharePoint Server. When you use this provider, the backup and restore features in SharePoint Server also back up and restore the BLOBs and the structured data in the content database without requiring you to do additional work. The FILESTREAM provider also supports Internet Small Computer System Interface (iSCSI) connected storage devices. For more information, see FILESTREAM Compatibility with Other SQL Server Features.

成本Costs

使用 FILESTREAM 提供者可能會增加作業成本,因為 IT 人員必須執行額外的工作。大型 RBS 儲存會減慢備份或還原、更新環境、升級至較新版本 SharePoint Server 或移轉 SharePoint 網站至另一個環境之類的工作。在您評估是否使用 RBS 時,應將這些成本列入考慮。Using the FILESTREAM provider might increase operational costs because the IT staff must perform additional tasks. Large RBS stores can slow down tasks such as backup or restore, updating the environment, upgrading to a newer version of SharePoint Server, or migrating the SharePoint sites to another environment. These costs should be considered when you evaluate whether to use RBS.

在 IT 生命週期使用 RBS 的影響Implications of using RBS over the IT life cycle

您應該評估在環境的整個生命週期使用 RBS 所產生的影響。對正常作業 (例如,擁有大型 BLOB 儲存) 而言的好方式,可能會造成備份、還原或升級期間的問題。透過評估在整個生命週期中使用 RBS 與 BOLB 儲存的影響,您便可以避免稍候可能出現的問題。You should evaluate the implications of using RBS for the whole life cycle of the environment. What might be a good idea for normal operations, such as having large BLOB stores, might present challenges during backup and restore or during an upgrade. By evaluating the effects of using RBS and BLOB store size on the whole life cycle, you can avoid potential problems later.

例如,使用遠端 RBS 提供者不但會增加 IT 作業的複雜度,也會提高某些成本。這是因為內容資料庫和 BLOB 儲存必須同步備份才能維護參照的一致性。For example, using a remote RBS provider will require increased IT operations complexity and some cost increases. This is because the content database and the BLOB store must be backed up in synchronization to maintain references consistency.

另一個例子是,在某些情形下無論 BLOB 存放在哪裡,升級作業將列舉甚至可能變更每個 BLOB。Another example is that in some cases upgrade operations will enumerate and possibly change each BLOB regardless of where the BLOBs are stored.

安裝程式Setup

使用 RBS 會增加設定的複雜度,因為您必須在伺服器陣列的所有網頁伺服器上安裝和設定 RBS 提供者。如需如何設定 RBS 的詳細資訊,請參閱在 SharePoint Server 伺服器陣列中使用 FILESTREAM 來安裝和設定 RBSUsing RBS can add some complexity to set up because you must install and configure the RBS provider on all Web servers in the farm. For more information about how to set up RBS, see Install and configure RBS with FILESTREAM in a SharePoint Server farm.

正常作業Normal operations

您應該考慮在正常作業期間使用一般的檔案大小和檔案存取類型。使用 RBS 處理大於 1 MB 的檔案可改善 I/O 和處理器效能,但使用 RBS 處理小於 256 KB 的檔案則會降低整體效能。將 BLOB 儲存在內容資料庫內是較有效的小檔案處理方式。You should consider the average file size and the kind of file access during normal operations. Although using RBS with files larger than 1 MB can improve I/O and processor performance, using RBS with files smaller than 256 KB might decrease overall performance. Storing the BLOBs inline in the content database is more efficient with smaller files.

您也應該考慮 BLOB 內容的使用方式。如果使用者大多只閱讀而不修訂內容,則 RBS 便能提升效能。不過,如果使用者經常修訂內容,則使用 RBS 將會降低效能。這是因為頻繁的版本修訂作業會大幅增加內容資料庫中的中繼資料和 BLOB 儲存的大小。You should also consider how BLOB content will be used. If users will most frequently read the content but not revise it, RBS can provide performance gains. However, if users will frequently revise the content, using RBS will decrease performance. This is because extensive versioning will cause significant growth in both the metadata in the content database and the size of the BLOB store.

您應該衡量任何儲存成本效益與可能增加之作業成本間的得失。You should weigh any storage cost benefits against potential operational cost increases.

監視及最佳化Monitoring and optimization

使用 RBS 也會增加額外的作業負荷,因為需要增加多個效能計數器以監視 RBS。您可以使用數個選項來調整 RBS 效能。如需詳細資訊,請參閱<SharePoint Server 中維護 RBS>。Using RBS also adds some operations overhead because there are several performance counters that are added to monitor RBS. Several options are available to tune RBS performance. For more information, see Maintain RBS in SharePoint Server.

資料庫維護Database maintenance

使用 RBS 時,資料庫索引重組和統計作業會有較佳的效率和較快的速度。此外,使用 RBS 時,定期一致性檢查 (例如 DBCC 檢查) 的速度也會大幅提高。You can achieve better efficiency and speed in database index defragmentation and statistics operations when you use RBS. Also regular consistency checks, such as DBCC checks, are also significantly faster when you use RBS.

不過,定期資料庫維護將變得較為複雜,因為您必須設定和使用 RBS 維護程式才能維護中繼資料與 BLOB 儲存在連結層級的一致性,也才能清除孤立的 BLOB。如需詳細資訊,請參閱<SharePoint Server 中維護 RBS>。However, regular database maintenance will become more complex because you must configure and use the RBS Maintainer to maintain link-level consistency between the metadata and the BLOB store and to perform cleanup of orphaned BLOBs. For more information, see Maintain RBS in SharePoint Server.

備份與還原Backup and restore

如果搭配本機 FILESTREAM 提供者使用 RBS,您可以使用內建的 SharePoint 工具進行備份和還原。這些作業會備份與還原中繼資料與 BLOB 儲存兩者。如果使用遠端 RBS 提供者,則必須小心協調備份與還原程序。這是因為備份與還原程序同時牽涉到中繼資料與 BLOB 儲存。規劃 RBS 設定時必須考慮這個因素。並非所有的 RBS 提供者皆支援備份和還原 BLOB 資料。您必須連絡提供者的製造廠以確認是否支援。If you use the local FILESTREAM provider with RBS, you can use built-in SharePoint tools to back up and restore. These operations back up and restore both the metadata and the BLOB store. If you use the remote RBS provider, you must carefully coordinate the backup and restore processes. This is because the backup and restore processes involve both the metadata and the BLOB store. You should take this into account when planning the RBS configuration. Not all RBS providers support backup and restore of BLOB data. You must check with the manufacturer of the provider to confirm support.

您不能使用 Microsoft System Center Data Protection Manager 來備份和還原儲存於 RBS 儲存的內容。You cannot use Microsoft System Center Data Protection Manager to back up and restore content that is stored in the RBS stores.

升級及更新Upgrade and update

在某些情況下,升級或甚至是套用軟體更新會列舉和逐一查看每個物件以包含 BLOB 資料 (無論資料儲存在哪裡)。因此,使用內部或遠端 BLOB 所花費的升級時間會差不多。Under some circumstances, an upgrade, or even applying software updates, can enumerate and iterate through each object to include BLOB data regardless of where that data is stored. Therefore, upgrade operations will be similar in duration whether inline or remote BLOBs are used.

評估提供者選項Evaluate provider options

RBS 必須有個可連接 RBS API 與 SQL Server 的提供者。SQL Server 2014 Service Pack 1 (SP1)、SQL Server 2008 Express 和 Microsoft SQL Server 2008 R2 Express 包含 FILESTREAM 提供者。RBS requires a provider that connects the RBS APIs and SQL Server. SQL Server 2014 Service Pack 1 (SP1), SQL Server 2008 Express and Microsoft SQL Server 2008 R2 Express include the FILESTREAM provider.

重要

RBS 可以在執行 SQL Server 2014 (SP1)、SQL Server 2008 R2、SQL Server 2008 或 SQL Server 2008 R2 Express 的本機電腦上執行。若要在遠端伺服器上執行 RBS,您必須執行 SQL Server 2008 R2 Enterprise。SharePoint Server 2016 要求您使用 SQL Server 2014 (SP1) 隨附的 RBS 版本。較舊版本的 RBS 無法搭配 SharePoint Server 2016 使用。RBS can be run on the local computer that is running SQL Server 2014 (SP1), SQL Server 2008 R2, SQL Server 2008 or SQL Server 2008 R2 Express. To run RBS on a remote server, you must be running SQL Server 2008 R2 Enterprise. SharePoint Server 2016 requires you to use the version of RBS that is included with the SQL Server 2014 (SP1). Earlier versions of RBS will not work with SharePoint Server 2016.

重要

SharePoint Server 2013 要求您使用 SQL Server 2008 R2 Feature Pack 中的 SQL Server 遠端 BLOB 存放區安裝套件 隨附的 RBS 版本。較舊版本的 RBS 無法搭配 SharePoint 2013 使用。此外,SQL Server 2005 中不支援 RBS。SharePoint Server 2013 requires you to use the version of RBS that is included with the SQL Server Remote BLOB Store installation package from the Feature Pack for SQL Server 2008 R2. Earlier versions of RBS will not work with SharePoint 2013. In addition, RBS is not supported in SQL Server 2005.

BLOB 可存放在提供者支援的市售儲存裝置上,例如,直接連接儲存裝置 (DAS) 或網路連接儲存裝置 (NAS)。SharePoint Server 2016 只支援在本機硬碟機或 iSCSI 磁碟機上使用的 FILESTREAM 提供者。您無法在遠端儲存裝置 (例如 NAS) 上讓 RBS 搭配 FILESTREAM 一起運作。BLOBs can be kept on commodity storage such as direct-attached storage (DAS) or network attached storage (NAS), as supported by the provider. The FILESTREAM provider is supported by SharePoint Server 2016 when it is used on local hard disk drives or iSCSI drives only. You cannot use RBS with FILESTREAM on remote storage devices, such as NAS.

下表摘要說明 FILESTREAM 的優點及限制。The following table summarizes FILESTREAM benefits and limitations.

操作需求Operational requirement 使用 FILESTREAM 提供者With the FILESTREAM provider 不使用 FILESTREAM 提供者Without the FILESTREAM provider
SQL Server 儲存的整合式備份及復原SQL Server integrated backup and recovery of the BLOB Store
Yes
只有在您使用的 RBS 提供者可支援時。Only if supported by the RBS provider that you are using.
以指令碼執行移轉至 BLOBScripted migration to BLOBs
Yes
Yes
支援鏡像Supports mirroring
No
No
記錄傳送Log shipping
Yes
是,且需實作提供者Yes, with provider implementation
資料庫快照集Database snapshots
*No*
*No*
地理位置複寫Geo replication
Yes
No
加密Encryption
僅 NTFSNTFS only
只有在您使用的 RBS 提供者可支援時。Only if supported by the RBS provider that you are using.
支援本機磁碟Local drives supported
Yes
是,且需實作提供者Yes, with provider implementation
網路連接儲存裝置 (NAS)Network attached storage (NAS)
只在 SharePoint Server 提供 iSCSI 支援時,以及第一個位元組時間小於 20 毫秒時。Only supported by SharePoint Server with iSCSI and if Time to First Byte is less than 20 milliseconds.
是,且需實作提供者Yes, with provider implementation
直接連接儲存裝置 (DAS)Direct attached storage (DAS)
SharePoint Server 不支援Not supported by SharePoint Server
是,且需實作提供者Yes, with provider implementation
Internet small computer system interface (iSCSI)Internet small computer system interface (iSCSI)
Yes
是,且需實作提供者Yes, with provider implementation

*如果您所用的 RBS 提供者不支援快照集,您就無法在內容部署或備份時使用快照集。FILESTREAM 提供者並不支援快照集。*If the RBS provider that you are using does not support snapshots, you cannot use snapshots for content deployment or backup. The FILESTREAM provider does not support snapshots.

如果 FILESTREAM 提供者對您的環境來說並不實用,您可以購買受支援的協力廠商提供者。若是如此,在評估提供者時,您應考慮下列條件:If the FILESTREAM provider is not practical for the environment, you can purchase a supported third-party provider. In this case, you should use the following criteria when you evaluate a provider:

  • 備份與還原能力Backup and restore capability

  • 經過測試的嚴重損壞復原Tested disaster recovery

  • 部署及資料移轉Deployment and data migration

  • 效能影響Performance impact

  • 長期管理成本Long-term administrative costs

重要

除非您本身為獨立軟體廠商 (ISV),且在設計儲存解決方案方面具有豐富開發經驗,否則不建議您開發提供者。We do not recommend that you develop a provider unless you are an independent software vendor (ISV) that has significant development experience in designing storage solutions.

另請參閱See also

其他資源Other Resources

遠端 Blob 存放區 (RBS) (SQL Server)Remote Blob Store (RBS) (SQL Server)

SQL Server 遠端 BLOB 存放區和 FILESTREAM 功能比較SQL Server Remote BLOB Store and FILESTREAM feature comparison