In my recent project, we are using the RBS for upload files to SharePoint. While we are uploading a file to SharePoint, it is stored in content database. In RBS, insted of upload files to SharePoint content database, use file system to store files.
In SharePoint Foundation 2010, a binary large object (BLOB) is a large block of data stored in a database that is known by its size and location instead of by its structure — for example a Microsoft Office 2010 document or a video file. By default, these BLOBs, also known as unstructured data, are stored directly in the SharePoint content database along with the associated metadata, or structured data. Because these BLOBs can be very large, it might be better to store BLOBs outside the content database. BLOBs are immutable. Accordingly, a new copy of the BLOB must be stored for each version of that BLOB. Because of this, as a database’s usage increases, the total size of its BLOB data can expand quickly and grow larger than the total size of the document metadata and other structured data that is stored in the database. BLOB data can consume lots of space and uses server resources that are optimized for database access patterns. Therefore, 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.
RBS is a Microsoft SQL Server library API set that is incorporated as an add-on feature pack for Microsoft SQL Server 2008 R2, SQL Server 2008 or Microsoft SQL Server 2008 R2 Express. The RBS feature enables applications, such as SharePoint Foundation 2010, to store BLOBs in a location outside the content databases. Storing the BLOBs externally can reduce how much SQL Server database storage space is required. The metadata for each BLOB is stored in the SQL Server database and the BLOB is stored in the RBS store.
SharePoint Foundation 2010 uses the RBS feature to store BLOBs outside of the content database. SQL Server and SharePoint Foundation 2010 jointly manage the data integrity between the database records and contents of the RBS external store on a per-database basis.
RBS is composed of the following components:
- RBS client library
An RBS client library consists of a managed library that coordinates the BLOB storage with Microsoft SharePoint Foundation, SQL Server 2008 Express, and RBS provider components. - Remote BLOB Storage provider
An RBS provider consists of a managed library and, optionally, a set of native libraries that communicate with the BLOB store.
An example of an RBS provider is the SQL FILESTREAM provider. The SQL FILESTREAM provider is a feature of SQL Server 2008 Express that enables storage of and efficient access to BLOB data by using a combination of SQL Server 2008 Express and the NTFS file system. For more information about FILESTREAM, see FILESTREAM Overview (http://go.microsoft.com/fwlink/p/?LinkID=166020&clcid=0x409) and FILESTREAM Storage in SQL Server 2008 (http://go.microsoft.com/fwlink/p/?LinkID=165746&clcid=0x409). - BLOB store
A BLOB store is an entity that is used to store BLOB data. This can be a content-addressable storage (CAS) solution, a file server that supports Server Message Block (SMB), or a SQL Server database.
Install & Configure RBS
We're experiencing a problem with the BLOB store cleanup. It's not deleting items in the BLOB store after the associated item has been deleted from the SharePoint Library.
ReplyDeleteAny idea how to troubleshoot or correct this?
Hi,
ReplyDeleteIt's actually a combination of RBS and FILESTREAM technology.
The GC of RBS maintainer just purges BLOBs in SQL Server. And FILESTREAM GC is needed to purge the files in file system. The old versions of file is showing in your filesystem. Every time an update is made to that RBS data, a new FILESTREAM file is created.
To resolve your problem, you have to work with GC with RBS. I am sharing a good article for you http://www.sqlskills.com/BLOGS/PAUL/post/FILESTREAM-garbage-collection.aspx.
BLOBs weigh down SharePoint content databases. Bloated databases slow search and file upload and download speeds. It's recommended to move BLOBs outside of the SQL Server.
ReplyDeleteAny chance the document link will be updated?
ReplyDelete