Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
SharePoint 2010 and Remote BLOB Storage<br />Thierry Gasser<br />
What is Remote BLOB Storage?<br />RBS is a feature of SQL 2008 and R2 !<br />Provides the ability to store BLOBs outside o...
Why Remote BLOB Storage?<br />Pro:<br />Potential performance improvements when storing for BLOBs that are larger than 1 M...
Process Flow – Saving a File<br />SharePoint WFE<br />7. Back to User<br />SharePoint Object Model<br />2. Enforce Busines...
Install and Configuration<br />Step 1 - Enable FILESTREAM<br />
Install and Configuration<br />Step 2 - Enable FILESTREAM support in SQL<br />EXEC sp_configurefilestream_access_level, 2<...
Install and Configuration<br />Step 3 - Provision a BLOB Store – Create Master Key<br />use [WSS_Content]<br />if not exis...
Install and Configuration<br />Step 4 - Provision a BLOB Store – Add FilestreamFilegroup<br />use [WSS_Content]<br />if no...
Install and Configuration<br />Step 5 - Provision a BLOB Store – Add File to Filegroup<br />use [WSS_Content]<br />alter d...
Install and Configuration<br />Step 6 - Enable RBS on First SharePoint Server<br />msiexec /qn /lvx* rbs_install_log.txt /...
Install and Configuration<br />Step 7 - Use PowerShell to activate provider<br />$site = get-spsitehttp://siteurl<br />$rb...
Installation – Next Steps<br />RBS works at the database level. When you create another database in the same farm<br />[Ru...
Advanced Configuration<br />Use PowerShell Configure the minimum size of content to be stored in the BLOB<br />Files small...
NTFS Configuration Best Practices<br />Configure AV to quarantine rather than delete infected files<br />Disable the gener...
NTFS Configuration Best Practices<br />Perform regular defragmentation of volume(s) holding BLOB data<br />Disk quotas can...
When should I use RBS with SharePoint?<br />I am a SharePoint Foundation user	<br />Limitations on database size with SQL ...
Performance Impact, some sample<br />SharePoint expects providers to have the following performance impact:<br />Throughpu...
Read Throughput<br />
How do I Migrate BLOB Data to RBS?<br />Use Power shell Commandlet - Migrate<br />Moves BLOBs from current location to the...
Migrate()<br />Use PowerShell to EXTERNALIZE all content<br />$site = get-spsite http://siteurl<br />$rbss = $site.Content...
Migrate()<br />Use PowerShell to INTERNALIZE all content<br />$site = get-spsite http://siteurl<br />$rbss = $site.Content...
Backup and Restore<br />Order of Operations<br />
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be...
Upcoming SlideShare
Loading in …5
×

Share point rbs in depth englisch

2,948 views

Published on

Good Overview and Details about RBS and SharePoint 2010 by Thierry Gasser, Microsoft

Published in: Technology

Share point rbs in depth englisch

  1. 1. SharePoint 2010 and Remote BLOB Storage<br />Thierry Gasser<br />
  2. 2. What is Remote BLOB Storage?<br />RBS is a feature of SQL 2008 and R2 !<br />Provides the ability to store BLOBs outside of a SQL database<br />Includes one easy Filestream provider which can be used to store BLOBs on an NTFS filesystem<br />SharePoint 2010 fully supports 3rd party Filestream<br />
  3. 3. Why Remote BLOB Storage?<br />Pro:<br />Potential performance improvements when storing for BLOBs that are larger than 1 MB<br />Potential storage cost savings from SAN to Fileshare (SAS)<br />In environments with frequent updates, fragmentation issues are easier to address <br />Cons:<br />RBS out of the box does not support<br />Database snapshots<br />Database mirroring<br />Encryption<br />More admin to manage the farm and SQL<br />Recommended to use a 3rd party provider which cost money. <br />
  4. 4. Process Flow – Saving a File<br />SharePoint WFE<br />7. Back to User<br />SharePoint Object Model<br />2. Enforce Business Logic<br />1. Save Request<br />RBS Client Library<br />Relational Access<br />3. Save BLOB<br />5. Return BLOB ID<br />6. Save Metadata & BLOB ID<br />BLOB Store<br />Provider Library<br />4. Write BLOB<br />SQL Server<br />BLOB<br />Store<br />Content<br />DB<br />Config<br />DB<br />
  5. 5. Install and Configuration<br />Step 1 - Enable FILESTREAM<br />
  6. 6. Install and Configuration<br />Step 2 - Enable FILESTREAM support in SQL<br />EXEC sp_configurefilestream_access_level, 2<br />Reconfigure<br />
  7. 7. Install and Configuration<br />Step 3 - Provision a BLOB Store – Create Master Key<br />use [WSS_Content]<br />if not exists (select * from sys.symmetric_keys where name = N'##MS_DatabaseMasterKey##')create master key encryption by password = N'Admin Key Password !2#4'<br />
  8. 8. Install and Configuration<br />Step 4 - Provision a BLOB Store – Add FilestreamFilegroup<br />use [WSS_Content]<br />if not exists (select groupname from sysfilegroups where groupname=N'RBSFilestreamProvider')alter database [WSS_Content]<br /> add filegroupRBSFilestreamProvider contains filestream<br />
  9. 9. Install and Configuration<br />Step 5 - Provision a BLOB Store – Add File to Filegroup<br />use [WSS_Content]<br />alter database [WSS_Content] add file (name = RBSFilestreamFile, filename = 'c:BlobstoreWSS_Content') to filegroupRBSFilestreamProvider<br />
  10. 10. Install and Configuration<br />Step 6 - Enable RBS on First SharePoint Server<br />msiexec /qn /lvx* rbs_install_log.txt /i RBS_X64.msi TRUSTSERVERCERTIFICATE=true FILEGROUP=PRIMARY DBNAME="WSS_Content" DBINSTANCE="DC" FILESTREAMFILEGROUP=RBSFilestreamProvider FILESTREAMSTORENAME=FilestreamProvider_1<br />On Subsequent Servers<br />msiexec /qn /lvx* rbs_install_log.txt /i RBS_X64.msi DBNAME="WSS_Content" DBINSTANCE="DBInstanceName" ADDLOCAL="Client,Docs,Maintainer,ServerScript,FilestreamClient,FilestreamServer"<br />
  11. 11. Install and Configuration<br />Step 7 - Use PowerShell to activate provider<br />$site = get-spsitehttp://siteurl<br />$rbss = $site.ContentDatabase.RemoteBlobStorageSettings<br />$rbss.Installed()<br />True<br />$rbss.Enable()<br />$rbss.SetActiveProviderName($rbss.GetProviderNames()[0])<br />$rbss<br /> Enabled ActiveProviderNameMinimumBlobStorageSizeUpgradePersistedProperties<br /> --------- ---------------------- ---------------------------- ------------------------------<br /> True FileStoreProvider_1 0 { }<br />
  12. 12. Installation – Next Steps<br />RBS works at the database level. When you create another database in the same farm<br />[Run the SQL commands]<br />msiexec /qn /lvx* rbs_install_Log.txt /i rbs_X64.msi REMOTEBLOBENABLE=1 FILESTREAMPROVIDERENABLE=1 DBNAME=<WSS_Content> FILESTREAMSTORENAME=FilestreamProvider_1 ADDLOCAL=EnableRBS,FilestreamRunScript DBINSTANCE=<DBInstanceName>><br />[PowerShell to Enable Provider]<br />
  13. 13. Advanced Configuration<br />Use PowerShell Configure the minimum size of content to be stored in the BLOB<br />Files smaller than this will be stored in the content database<br />$db= Get-SPContentDatabase–Site http:/[URL of site collection]$db.RemoteBlobStorageSettings.MinimumBlobStorageSize= [number of bytes]#db.Update()<br />
  14. 14. NTFS Configuration Best Practices<br />Configure AV to quarantine rather than delete infected files<br />Disable the generation of 8.3 names when files are created<br />fsutilbehavior set disable8dot3 1<br />Disable updating the last access time for a file when it is accessed<br />fsutilbehavior set disablelastaccess 1<br />
  15. 15. NTFS Configuration Best Practices<br />Perform regular defragmentation of volume(s) holding BLOB data<br />Disk quotas can be used to restrict storage<br />Configure the cluster size for volume(s) to host BLOB data to 64 KB<br />This must be done when the volume is formatted<br />format F: /FS:NTFS /V:MyFILESTREAMContainer /A:64K <br />
  16. 16. When should I use RBS with SharePoint?<br />I am a SharePoint Foundation user <br />Limitations on database size with SQL 2008 Express require the use of RBS.<br />Automatically configure RBS + FILESTREAM for WSS 3.0 users during upgrade!<br />I am an enterprise user with a large amount of content in SharePoint<br />MS recommendation is approximately 1TB or more, though you can still save costs if you have less data.<br />Research and planning are needed. Talk to providers!<br />
  17. 17. Performance Impact, some sample<br />SharePoint expects providers to have the following performance impact:<br />Throughput: 5 -10% degradation<br />Average Response time: Impact should be minimal as file size increases<br />SQL CPU Usage: 20% for small files, minimal impact for large files<br />
  18. 18. Read Throughput<br />
  19. 19. How do I Migrate BLOB Data to RBS?<br />Use Power shell Commandlet - Migrate<br />Moves BLOBs from current location to the current Active RBS Provider store. <br />Does deep copy of BLOBs – one BLOB at a time<br />Live Migration – no downtime is required<br />Migration processcan be terminated and resumed<br />
  20. 20. Migrate()<br />Use PowerShell to EXTERNALIZE all content<br />$site = get-spsite http://siteurl<br />$rbss = $site.ContentDatabase.RemoteBlobStorageSettings<br />$rbss.Migrate()<br />
  21. 21. Migrate()<br />Use PowerShell to INTERNALIZE all content<br />$site = get-spsite http://siteurl<br />$rbss = $site.ContentDatabase.RemoteBlobStorageSettings<br />$rbss.SetActiveProviderName(“”)<br />$rbss.Migrate()<br />$rbss.Disable() <br />$rbss<br /> Enabled ActiveProviderNameMinimumBlobStorageSizeUpgradePersistedProperties<br /> --------- ---------------------- ---------------------------- ------------------------------<br /> False 0 { }<br />
  22. 22. Backup and Restore<br />Order of Operations<br />
  23. 23. © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.<br />The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.<br />

×