Remote BLOB Storage with SharePoint
2010
With Sharepoint 2010, the Remote Blob Storage (RBS) functionality, which allows putting documents into the database filesystem instead of the database itself, came into focus again. To make that happen each content database is located in a specific section of the file system where all the documents are stored. This documents are none the less managed by Sharepoint, a database is mandatory even if the documents are stored as BLOB because metadata is written exclusively into databases.
1 What is RBS
RBS is a
library API set that is incorporated as an add-on feature pack for Microsoft
SQL Server. It can be run on the local
server running Microsoft 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 edition. RBS is not supported for Microsoft SQL Server 2005.
Binary
large objects (BLOBs) are data elements that have either of the following
characteristics:
·
Unstructured data that has no schema (such as a piece
of encrypted data).
·
A large amount of binary data (many megabytes or
gigabytes) that has a very simple schema, such as image files, streaming video,
or sound clips.
RBS uses a provider to connect to any dedicated BLOB
store that uses the RBS APIs. Storage solution vendors can implement providers
that work with RBS APIs. SharePoint Server 2010 supports a BLOB storage
implementation that accesses BLOB data by using the RBS APIs through such a
provider. You can implement RBS for Microsoft SharePoint 2010 Products by using
a supported provider that you obtain from a third-party vendor. Most
third-party providers store BLOBs remotely.
In addition to third-party providers, you can use the RBS
FILESTREAM provider that is available through the SQL Server Remote BLOB Store
installation package from the Feature Pack for Microsoft SQL Server 2008 R2.
The RBS FILESTREAM provider uses the SQL Server FILESTREAM feature to store
BLOBs in an additional resource that is attached to the same database and
stored locally on the server. The FILESTREAM feature manages BLOBs in a SQL
database by using the underlying NTFS file system.
The location that an RBS provider stores the BLOB data
depends on the provider that you use. In the case of the SQL FILESTREAM
provider, the data is not stored in the MDF file, but in another file that is
associated with the database.