19
SQL Server Remote BLOB Storage für SharePoint 2010 René Balzano Technology Solutions Professional Data Platform, Microsoft Switzerland April 2011

Share point rbs overview deutsch

Embed Size (px)

DESCRIPTION

Eine Übersicht über RBS und SharePoint 2010 von Rene Balzano, Microsoft

Citation preview

Page 1: Share point rbs overview deutsch

SQL ServerRemote BLOB Storagefür SharePoint 2010

René BalzanoTechnology Solutions Professional Data Platform, Microsoft Switzerland

April 2011

Page 2: Share point rbs overview deutsch

Slide 2 | Best Practice für SharePoint, Januar 2011

Strukturierte Inhalte und BLOBs in SharePoint

1 Web Application umfasst 1-n Content-Datenbanken1 Content-Datenbank enthält 1-n Site Collections(Best Practice: 1)Dateninhalte einer Site Collection sind in Tabellen der Content-Datenbank enthalten

Strukturierte Inhalte:dbo.AllUserData, dbo.NameValuePair_xxx u.a.Unstrukturierte BLOB-Inhalte (Office-Dokumente, Bilder, Videos usw.):dbo.AllDocStreams

Web Application

Content DBContent DB

Content DB

dbo.AllUserData

dbo.AllDocStreams

...tp_SiteIdtp_ListId...nvarchar1nvarchar2...int1int2...

...

...

...

...Content varbinary(max)RbsId

FilestreamRBS

Page 3: Share point rbs overview deutsch

Slide 3 | Best Practice für SharePoint, Januar 2011

Einsatzszenario vonRBS unter SharePoint

Für SharePoint-Content-DB, welche einen hohen Anteil an binären Dateien speichern (BLOB, z.B. Office-Dokumente, Bilder, Videos usw.), kann die Datenbankgrösse mittels RBS substantiell gesenkt und die Systemleistung deutlich erhöht werdenRBS erlaubt das Speichern von BLOB-Content in einem Dateisystem anstelle der SharePoint-Content-DatenbankDie separate BLOB-Speicherung in einem Dateisystem ermöglicht effektivere Speichermethoden und entkoppelt Datensicherung und Verwaltung vom strukturierten Inhalt der SharePoint-Datenbanken

FilestreamRBS

Page 4: Share point rbs overview deutsch

Slide 4 | Best Practice für SharePoint, Januar 2011

Architektur mit und ohne RBS

FilestreamRBS

Ohne RBS Mit RBS

Page 5: Share point rbs overview deutsch

Slide 5 | Best Practice für SharePoint, Januar 2011

RBS Komponenten

Client-KomponenteLibrary (DLL), welche durch die Client-Applikation verwendet wirdIm Fall von SharePoint stellt dessen Web Frontend Server (WFE) die Client-Komponente dar

Server-KomponenteTransact-SQL-Script, welches in der Server-Datenbank der Client-Applikation anlässlich der Konfiguration von RBS ausgeführt werdenIm Fall von SharePoint stellt eine Content-Datenbank, für welche RBS einzurichten ist, diese Server-Komponente dar

RBS-ProviderClient- und Server-Komponente, welche die Schnittstelle zum Trägersystem des durch RBS zu beliefernden BLOB-Stores bildetIm Fall der Verwendung von SQL Server als BLOB-Store wird dessen FILESTREAM-Konzept verwendet, der entsprechende Microsoft-eigene RBS-Provider wird als FILESTREAM Provider bezeichnetDritthersteller wie AvePoint stellen ebenfalls RBS-Provider zur Verfügung, welche die Verbindung zu ihren jeweiligen BLOB-Store-Plattformen bilden

FilestreamRBS

Page 6: Share point rbs overview deutsch

Slide 6 | Best Practice für SharePoint, Januar 2011

Anteil des BLOB-Contentseiner SharePoint-Datenbank

Erheben der Grösse aller BLOB-Inhalte einer SharePoint-Content-Datenbank

z.B. per SQL Server Management Studio (SSMS)

SELECT COUNT(*) Anzahl,SUM(ad.Size) Gesamtgrösse,SUM(ad.Size)/COUNT(*) Mittelwert, MAX(ad.Size) Grösstes, MIN(ad.Size) Kleinstes

FROM [WSS_Content].[dbo].[AllDocs] ad

FilestreamRBS

Page 7: Share point rbs overview deutsch

Slide 7 | Best Practice für SharePoint, Januar 2011

Funktionalität von RBSmit FILESTREAM oder 3rd Party

FilestreamRBS

Operational requirement

RBS with FILESTREAM

RBS without FILESTREAM(i.e. with 3rd Party Provider)

SQL Server integrated backup and recovery of the BLOB Store

Yes Yes

Scripted migration to BLOBs Yes Yes

Supports mirroring No No

Log shipping Yes Yes, with provider implementation

Database snapshots No No

Geo replication Yes No

Encryption NTFS only No

Network Attached Storage (NAS)

Not supported by SharePoint 2010 Products

Yes, with provider implementation

Page 8: Share point rbs overview deutsch

Slide 8 | Best Practice für SharePoint, Januar 2011

FILESTREAM ist ein Attribut eines BLOB-Datenfelds von SQL Server, welches bewirkt, dass der Feldinhalt als Datei unter NTFS gespeichert wird und die Datenbank lediglich einen Pointer dorthin verwaltetFILESTREAM-Dateien unterstehen der Transaktions-kontrolle wie alle übrigen Teile der SQL Server-DatenbankÄnderungen an einem FILESTREAM -Datenfeld erzeugen eine neue Dateiversion (alte Kopie bleibt bestehen)SQL Server DB-Backup und -Restore berücksichtigen auch FILESTREAM -DateienFILESTREAM -Daten zählen nicht zur 10GB-Grenze von SQL Server Express

FILESTREAM FilestreamRBS

Page 9: Share point rbs overview deutsch

Slide 9 | Best Practice für SharePoint, Januar 2011

FILESTREAM RBS Provider

RBS-Unterstützung (inkl. FILESTREAM RBS-Provider) ist als AddIn für SharePoint aus dem SQL Server 2008 R2 Feature Pack zu beziehenhttp://www.microsoft.com/downloads/en/details.aspx?displaylang=en&FamilyID=ceb4346f-657f-4d28-83f5-aae0c5c83d52

Wird der FILESTREAM Provider verwendet, verbindet RBS eine Content-DB mit einer FILESTREAM-Filegroup (Dateiverzeichnis unter NTFS) und platziert alle binären Objekte dieser Datenbank (d.h. aller darin enthaltenen Site Collections), die eine konfigurierte Mindestgrösse haben (Default 60KB, Empfehlung 1MB) als Dateien im Dateisystem

Whitepaper hierzu (Feb 2011)http://download.microsoft.com/download/9/5/2/9521D8DA-5D3C-4817-BB9D-B5B1BD293365/SQL_Server_2008_R2_Remote_Blob_Storage.docx

FilestreamRBS

Page 10: Share point rbs overview deutsch

Slide 10 | Best Practice für SharePoint, Januar 2011

3rd Party RBS Provider

RBS unterstützt auch 3rd-Party RBS Provider,z.B. folgender Anbieter

DocAve Extender Free (AvePoint)SharePoint File Share Library (Bamboo)Archiving Express for SharePoint (Metalogix)Simpana Archive for SharePoint (Commvault)NCachePoint (Alachisoft)EMC Centera RBS (EMC)SnapManager (NetApp)ECM Suite for SharePoint (Open Text)StoragePoint (Metalogix)

FilestreamRBS

Page 11: Share point rbs overview deutsch

Slide 11 | Best Practice für SharePoint, Januar 2011

SQL ServerLizenzierung für RBSSzenario Lokale SQL Server

Version/EditionEntfernte SQL ServerVersion/Edition

FILESTREAM Provider, BLOB werden im lokalenSQL Server Dateisystem gespeichert

2008 R2 Express2008 Standard SP1 CU22008 R2 Standardund höhere

N/A

FILESTREAM Provider, BLOB werden auf entferntemSQL Server Dateisystem gespeichert

2008 R2 Enterpriseund höhere

2008 R2 Standardund höhere

3rd Party RBS ProviderBLOB werden nicht unter Kontrolle von SQL Server gespeichert

2008 R2 Enterpriseund höhere

N/A

FilestreamRBS

Page 12: Share point rbs overview deutsch

Slide 12 | Best Practice für SharePoint, Januar 2011

Dimensionierung

RBS ist empfohlenfür Content-DB-Grössen (inkl. BLOB-Content) ab 100GBfür BLOB-Dateigrössen ab 1MBfür BLOB-Dateigrössen ab 80KBbei Performanceinschränkung durch SQL Server

Zu beachtendie Dimensionierungsempfehlungen für SharePoint-Content-DB werden durch den Einsatz von RBS nicht verändert (max. 200GB pro Content-DB gilt als Best Practice-Empfehlung)die Grösse von speicherbaren Dokumenten wird durch den Einsatz von RBS nicht verändert (max. 2GB pro Datei)

FilestreamRBS

Page 13: Share point rbs overview deutsch

Slide 13 | Best Practice für SharePoint, Januar 2011

RBS und Hochverfügbarkeit

Backup/RestoreGemäss SQL Server-Standardfunktionalität (bei verteilter Speicherung ist Backup-Synchronisation zu berücksichtigen)

Log ShippingUnterstützt durch FILESTREAM Provider,für 3rd Party Provider zu prüfen

ClusteringUnterstützt durch den FILESTREAM Provider (FILESTREAM Filegroup muss auf Shared Disk liegen)

Mirroring, ReplikationNicht direkt unterstützt, via BLOB Store zu realisieren(gleiche Anforderung wie Backup-Synchronisation)

FilestreamRBS

Page 14: Share point rbs overview deutsch

Slide 14 | Best Practice für SharePoint, Januar 2011

RBS Maintainer

Applikation (C:\Program Files\Microsoft SQL Remote Blob Storage 10.50\

Maintainer), die periodisch (z.B. per Scheduler) aufzurufen ist, um BLOB Store Maintenance Prozesse abzuwickeln

Delete PropagationBLOB Objekte im Dateisystem werden nicht gelöscht, wenn sie aus der Datenbank gelöscht werden. Per Maintainer erfolgt die Löschung definitivOrphan CleanupBLOB Objekte, zu welchen keine Datenbankeinträge existieren (was nur aus Fehlersituationen entstehen kann), werden gelöscht

EmpfehlungAnlässlich der Installation von RBS via Advanced Settings nicht die Default-Konfiguration verwenden (welche Maintainer automatisch aufrufen lässt), sondern manuell einen Task aufsetzen, welcher Maintainer gemäss der Backupstrategie und den Betriebszeiten aufruft

FilestreamRBS

Page 15: Share point rbs overview deutsch

Slide 15 | Best Practice für SharePoint, Januar 2011

Remote und Local FILESTREAM

SQL Server

Application

RBS Client Library

Provider Library

ApplicationDatabase

RBS Aux Resources

BLOB Store(File GroupAnd tables)

Local FILESTREAM SQL Server

Application

RBS Client Library

Provider Library

ApplicationDatabase

RBS Aux Resources

BLOB StoreDatabase

BLOB Store(File Group and tables)

Remote FILESTREAM

SQL Server 2

SQL Server 1

Application

RBS Client Library

Provider Library

ApplicationDatabase

RBS Aux Resources

BLOB StoreDatabase

BLOB Store(File Group and tables)

Remote FILESTREAMApplication Database =SharePoint Content DB

RBS Aux Resources = SQL Server RBS Objects in Content DB(Stored Procs, Tables etc.)

BLOB Store = FILESTREAM Data (Files in NTFS and Pointer-Values in DB Tables)

FilestreamRBS

Page 16: Share point rbs overview deutsch

Slide 16 | Best Practice für SharePoint, Januar 2011

FILESTREAM RBSBackupszenarien

Empfehlung: SQL Server Backup verwenden(nicht SharePoint-Oberfläche)Die Content-DB und ihr FILESTREAM BLOB Store lasen sich unabhängig, aber parallel sichern (und wiederherstellen), wenn sie leicht zeitverschoben gestartet werdenWenn zwischen dem Start der Content-DB-Backups und dem Ende des BLOB-Backups der Maintainer nicht ausgeführt wird, bleibt die referentielle Integrität zwischen beiden Backups in jedem Fall gewahrt

FilestreamRBS

Page 17: Share point rbs overview deutsch

Slide 17 | Best Practice für SharePoint, Januar 2011

FILESTREAM RBSBackupszenarien

FILESTREAM-Dateien werden intern versioniertBei Änderungen an einem BLOB legt RBS/FILESTREAM immer eine neue Kopien der betroffenen Datei anDie alte Dateiversionen, die z.B. noch in einem vorherigen DB-Backup referenziert sein könnte, bleiben bestehenBeim Löschen eines BLOB-Eintrages aus einer Content-DB werden die dazugehörigen FILESTREAM-Dateien (alle Versionen) nicht entferntDas Löschen von FILESTREAM-Dateien, welche nicht mehr durch einen Content-DB-Eintrag referenziert sind, geschieht nur beim Ausführen des MaintainersDeshalb können z.B. während des Ausführens eines DB- und BLOB-Backups Mutations- und Lösch-Operationen erfolgen, solange nicht auch der Maintainer gestartet wird.

Solange zwischen dem Start des Content DB-Backups und dem Ende des FILESTREAM-Backups der Maintainer nicht ausgeführt wird, kann jederzeit in der Farm gearbeitet werden

FilestreamRBS

Page 18: Share point rbs overview deutsch

Slide 18 | Best Practice für SharePoint, Januar 2011

Kontakt

René Balzano

TECHNOLOGY SOLUTIONS PROFESSIONALDATA PLATFORM [email protected]+41 (0)43 4566909

Page 19: Share point rbs overview deutsch