Microsoft SQL Remote Blob Storage (RBS) Samples
RBS is a library API set that is designed to move storage of BLOB data from database servers to external Content Addressable Stores (CAS). A reference to the blob is stored in the database. An application stores and accesses blob data by calling into the RBS client library. RBS manages the lifecycle of the blob e.g. doing garbage collection as and when needed.
The following samples are included:
- Remote Blob Storage Sample Application Application.exe. This contains implementations of Simple Store / Fetch, Custom Store (specifying collections / blob stores), Store / Fetch using Push streaming, Store / Fetch using Pull streaming, and an example that uses the System.IO.Stream APIs to do asynchronous reads from the blob store.
- File Store sample provider Microsoft.Data.BlobStores.FileBlobStore. This file contains the basic implementation of a provider that uses NTFS files as the blob store. This is a demonstration provider for development and testing purposes only and should not be used on production systems.
- InstallProvider.exe utility application. This is a generic utility tool to aid in correctly installing, registering and uninstalling providers on both on the client and the server.
See the RBS team blog at http://blogs.msdn.com/sqlrbs for the latest news regarding RBS.
Also, the Remote Blob Store Provider Library Implementation Specification is now online at http://msdn.microsoft.com/en-us/library/cc905212.aspx.
Scenario
Jane is a developer for Adventure Works Cycles. She has to store documents in an external CAS store but still wants to utilize the relational capabilities of SQL Server without incurring the cost of manually keeping track of the external blobs.Joe is a developer for a firm that manufactures Content Addressable Store hardware. He wants to create a provider library to allow applications that are RBS enabled to utilise his firm's technology.
Languages
Transact-SQL and Visual C#.Prerequisites
Before running this sample, make sure the following software is installed:- Microsoft SQL Server or Microsoft SQL Server Express. You can obtain SQL Server Express free of charge from the SQL Server Express Documentation and Samples web site.
- The SQL Server Remote Blob Store installation package available as part of the feature packs included with SQL Server, also available at the SQL Server Feature Pack site.
- .NET Framework SDK 2.0 or Microsoft Visual Studio 2005. You can obtain .NET Framework SDK free of charge.