To solve the storage problem of large files in SQL server. Some smart guys developed the BLOB concept, it stands for Binary Large Object.
From the following diagram, you can see that the large files are stored in the DB table when there is no BLOB provider applied. This definitely will decrease the database performance significantly.
Without BLOB provider
BLOB provider and RBS (Remote BLOB Storage) provider allows the SQL database to offload the large files from the tables, and only keep the pointers.
With BLOB provider
With remote BLOB provider
Note there are limitation applying to different BLOB providers.
BLOB Provider | BLOB Storage Place |
Filestream (comes with SQL 2008) | Only the directly attached disks |
RBS Filestream (free Microsoft addon) | A dedicated remote BLOB SQL database. (the disk has to be direct attached to the remote host) |
AveDoc (developed by AvePoint) | Remote file storage |
References:
http://blogs.msdn.com/b/opal/archive/2010/03/24/faq-sharepoint-2010-remote-blob-storage-rbs.aspx
http://msdn.microsoft.com/en-us/library/gg316768.aspx