1
votes

We have a SharePoint Foundation 2010 installation with a large content database ( ~30 GB ) and we have configured the SQL Server (2008 R2) and the SharePoint to use FILESTREAM RBS. My understanding of FILESTREAM RBS is that it should store the BLOBs on disk separately from the mdf file. Indeed I have tried importing new documents to document libraries and it stores them in the specified disk location and I can verify that these are the files I have uploaded to the document library in SharePoint.

We also need to migrate the existing data from the database to the RBS FILESTREAM storage. Presumably this is achieved through powershell calling a SharePoint API method called migrate for a given content database as described in this technet article.

I started this migration yesterday afternoon and after a while today the process has finished but of the ~35 GB of blob data the BlobStorage folder which I have specified during the configuration is only 250 MB in size. On the other hand there's 6 mssqlrbs_filestream_data_n tables in the content database approx. 5 GB each. The database has the same about of free space as before, the mdf file is the same in size and there's no additional files in the directory with the mdf and ldf files so it looks like the data has been moved between tabled but have not been migrated to the BlobStorage folder as I expected.

There must be some misconception I have about the FILESTREM RBS storage or about the SharePoint blob data migration process.

Is there an additional step to move the data from the mssqlrbs_filestream_n tables to disk?

1

1 Answers

1
votes

How large are the files you transferred? It sounds like the majority of these are under the default 61140 byte limit for inline storage so get stored in varbinary(max) columns in the internal tables rather than the Filestream column.

This RBS blog post has a detailed explanation of these values. We’ve done a lot of performance testing to make sure they’re optimized for the Filestream feature, but if you have a specific need to offload storage of these docs to Filestream it's possible to change these values for any new inserted blobs. You can see the current values of these configuration values (max_size_inline_blob, max_size_inband_write and max_size_inband_read) in the mssqlrbs.rbs_blob_stores view in your content database.