In my various blog posts on SharePoint Storage I have highlighted the fact that SQL Server is not the right place to carry heavy payload of SharePoint unstructured data called BLOBs. This is because the BLOB storage in SQL Server is bound to hamper the performance of a SharePoint infrastructure. So, as a strategy Microsoft first introduced External BLOB Storage (EBS) in SharePoint 2007 SP1 through COM interface and then later in SharePoint 2010 provided another approach for externalizing the blobs through Remote BLOB Storage (RBS).
An RBS provider offloads all the BLOB content being pushed to SQL Server whereas an EBS Provider gives an opportunity to offload the BLOB and passes an ID to SharePoint to keep track of it. The primary purpose of both is to rid your SQL Server of the BLOB content and move it to inexpensive media. StorageEdge lets you connect your SharePoint with external storage locations through these providers.
People often tend to confuse EBS and RBS. Following shall bring out salient aspects of both.
SharePoint EBS Provider vs Remote Blob Storage Provider
- Remote blob storage is implemented in SQL Server 2008 R2 and has no direct relation to SharePoint. On the other hand, EBS has been provided as a layer in the MOSS 2007 stack at a level where it talks to SQL Server.
Figure 1: How External Blob Storage and Remote Blob Storage Works
2. EBS (External Blob Storage) has a SharePoint farm-wide applicability whereas the RBS provider library can be associated with each individual content database.
3. Remote Blob Storage is not unique to SharePoint only as it is available to any application using SQL Server, whereas EBS is SharePoint specific.
4. Remote Blob Storage provider can be associated at content database level whereas EBS has a farm-wide applicability.
Having said so, there are certain pros and cons of both the approaches. Some of the important ones are:
Pros and cons of EBS and Remote Blob Storage Providers
- While EBS is part of SharePoint stack, it can take ownership of the BLOB as it has the context information of the BLOB and changes/deletes on it can be tracked through SharePoint. RBS has lesser context information of the BLOB being externalized; the metadata information has to be stored out of SQL Server.
- In case of EBS, every request either related or not must have to go through EBS whereas RBS only receives the relevant traffic.
- Remote Blob Storage has managed interface whereas EBS is unmanaged COM interface which might create a slight performance overhead.
- Though not certain, but it is likely that RBS might have more performance, as it is likely that EBS will fade out over time.
The pros and cons of both the approaches suggests that you need a tool that works as an integral part of SharePoint installation, provides reliable providers for both EBS and RBS for externalizing your blob content
StorageEdge provides both EBS and RBS providers for SAN, NAS and Cloud storage and helps you reduce your SharePoint content database size up to 95%. StorageEdge gives you great control over the blob externalization where you can externalize blobs based on certain criteria and organize them in various folder structures. StorageEdge keeps the content database and the externalize content synchronized and provides full management for orphan content. It also helps you migrate from EBS to RBS. Furthermore, it allows for hierarchical multi-tiered storage such as local storage, NAS and SANs.
Thus, in the debate of EBS vs. RBS, none is a clear winner. Though RBS seems likely to stay longer, EBS does have an existence for now. In any case, StorageEdge is the solution to help you leverage benefits of both while allowing you to switch between the two in case you wish to and providing you at the same time with much more than a simple provider.