Optimiser le Stockage      SharePoint avec l’Externalisation des       données BLOB                       Dan Holme       ...
ContenusIntroduction                                                                                      1Principes de ba...
1 IntroductionQuand les organisations font monter en puissance leur utilisation de SharePoint en tant que systèmede gestio...
2accrue de l’architecture et, en particulier, les considérations à en compte pour la sauvegarde, la restau-ration, la haut...
3par les capacités de l’infrastructure de stockage à être disponible, récupérable, performante,administrable et économique...
4http://go.microsoft.com/fwlink/?LinkID=177388. Cette version (ou une version plus récente) de RBS estobligatoire pour Sha...
5Donc, que les BLOBs soient stockés dans une base de données de contenu ou externalisés, SharePointgère les autorisations ...
6(http://technet.microsoft.com/fr-fr/library/cc262787.aspx#ListLibrary), une limite logicielle qui résulte dupointeur 32 b...
7Contenus de corbeilleQuand un document est supprimé, ce document et ses versions sont conservés selon les paramètresde co...
8PowerPoint sont utilisées, celles-ci créent les vues des documents dans un cache appelé cache OfficeWeb Apps.Quand un doc...
9La taille de la base de données de recherche et d’autres services n’est pas impactée par l’externalisationéventuelle des ...
10(ou d’euros) par an grâce à l’optimisation du stockage concentrée sur l’externalisation des BLOBs. Etcertaines plates-fo...
11Performance de stockage de niveau 1 – De nombreuses organisations réservent des sous-systèmesde stockage de niveau 1 de ...
12à 256 Ko est plus rapide avec le BLOB stocké dans la base de données de contenu SQL Server.Entre 256 Ko et 512 Ko ou 1 M...
13BLOBs, toutes les autres performances sont dégradées. Par exemple, la performance des affichagesdes listes est ralentie....
14Nous avons aussi réalisé des tests avancés sur l’impact des BLOBs dans les conditions réellesd’utilisation, et nous en p...
15Enfin, certaines plates-formes offrent des fonctionnalités de gestion de stockage précieuses. Par exemple,beaucoup de so...
16et des outils de gestion efficaces). Par exemple, en externalisant les BLOBs vers un niveau de stockagequi prend en char...
17Sauvegarde et Restauration StandardPrenons RBS et le fournisseur FILESTREAM comme exemple. Si vous externalisez les BLOB...
18Le processus de sauvegarde dune base de données de contenu et de son magasin d’objets BLOBassocié est le suivant :   1. ...
19Fenêtre de sauvegarde et objectif de temps de repriseUne autre considération significative pour les SLAs de sauvegarde e...
20d’activité avec les BLOBs externalisés. Vous devez donc concevoir une solution basée sur vos besoinsmétier et techniques...
21Sauvegarde, récupération, et récupération d’urgenceFONCTIONNALITÉ                                                   FILE...
22Examen des solutions tiercesLorsque vous examinez les solutions tierces, évaluez-les pour les caractéristiques suivantes...
23Gestion de la capacité SharePoint Server 2010 : limitations et frontières logicielles :http://technet.microsoft.com/fr-f...
24ModificationsCe document est fourni uniquement à titre informatif est sujet à modification sans préavis. Malgré toutel’a...
Prochain SlideShare
Chargement dans…5
×

Optimiser le stockage Sharepoint avec l'externalisation des données BLOB

1 550 vues

Publié le

Ce livre blanc est la première ressource d'une série sur l'optimisation et la gestion du stockage à être publiée par une équipe de MVP SharePoint. Ce livre blanc a pour ambition de fournir un panorama global et objectif des concepts et problèmes, et de vous donner les éléments pour comprendre, pour partager avec vos pairs et votre hiérarchie et pour prendre des décisions éclairées sur le rôle de l'externalisation des BLOBs dans votre architecture de stockage.

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
1 550
Sur SlideShare
0
Issues des intégrations
0
Intégrations
41
Actions
Partages
0
Téléchargements
29
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Optimiser le stockage Sharepoint avec l'externalisation des données BLOB

  1. 1. Optimiser le Stockage SharePoint avec l’Externalisation des données BLOB Dan Holme Chief SharePoint Evangelist Randy Williams Enterprise Trainer & Evangelist Jeremy Thake Enterprise Architect
  2. 2. ContenusIntroduction 1Principes de base 2 Documents, bases de données et BLOBs 2 Le défi de l’optimisation du stockage 2 Externalisation des BLOBs 3 EBS et RBS 3 Modules et fournisseurs 4 Parité fonctionnelle 4 Migration vers EBS ou RBS 5Avantages 5 Réduction du coût de stockage 5 Règle des 80 pourcent 5 Stockage de document et de métadonnées 5 Versions de document 6 Contenus de corbeille 7 Cache des Office Web Apps 7 Bases de données de service 8 Journaux de transactions 9 Externalisation des BLOBs, capacité et coût 9 Optimisation de la Performance 10 Performance d’accès à un document unique 10 Performance des Bases de Données de contenu, du serveur SQL et de la ferme SharePoint 12 Amélioration de la gestion du stockage et Réduction de l’espace occupé 14 Restructuration de contenu efficace 15 Meilleure montée en charge 15Considérations 16 Complexité architecturale accrue 16 Sauvegarde, Restauration, Haute Disponibilité et Plan de Reprise des Activités 16 Sauvegarde et Restauration Standard 17 Point de reprise et perte de données acceptable 17 Fenêtre de sauvegarde et objectif de temps de reprise 19 Haute disponibilité et Plan de Reprise d’Activité (PRA) 19Options pour externaliser les BLOBs 20 Fonctionnalités d’externalisation des BLOBs 20 Prise en charge pour les versions et le stockage SharePoint 20 Sauvegarde, récupération, et récupération d’urgence 21 Prise en charge de cycle de vie du contenu 21Examen des solutions tierces 22
  3. 3. 1 IntroductionQuand les organisations font monter en puissance leur utilisation de SharePoint en tant que systèmede gestion de contenu, intégrant la gestion de documents et d’enregistrements, la collaboration etl’archivage, elles déplacent vers SharePoint des activités traditionnellement prises en charge par lespartages de fichiers et par les pièces jointes des emails. Au passage, la charge de stockage de cesdocuments se déplace vers le stockage de SharePoint, c’est-à-dire les bases de données de contenuSQL Server, souvent situées sur les ressources de stockage les plus performantes et coûteuses.Les conséquences vont des plus évidentes (les coûts de stockage montent en flèche) aux plus contre-intuitives (la performance de SharePoint peut être dégradée). Les organisations luttent pour définir pourSharePoint une architecture de stockage optimisée, économique montant en charge et prête à recevoirjusqu’à des téraoctets ou des dizaines de téraoctets (To) de contenu.Il y a un débat dans les communautés SharePoint et SQL, entre les clients, experts et MVP, et mêmechez Microsoft sur la capacité à monter en charge, sur l’impact des documents sur la capacité et laperformance du stockage, et sur le rôle de l’externalisation des données BLOB, qui permet de déplacerles données BLOB (Binary Large OBject), les données non structurées qui représentent le contenu d’undocument, vers des niveaux de stockage plus économiques.Ce qui a relancé le débat, cest que Microsoft a mis à jour son guide pour le dimensionnement deSharePoint en juillet 2011 pour prendre en charge les bases de données de contenu jusqu’à 4 To pourles scénarios de collaboration, et celles de taille illimitée pour les archives de documents. Les nouvellesrecommandations de Microsoft incluent des directives pour l’architecture, les systèmes de stockage dehaute performance, la gouvernance et des outils de gestion complémentaires à ceux de SharePoint pouroffrir des niveaux de service (SLAs) en matière de performance, de sauvegarde et restauration et dedisponibilité.Ce livre blanc explore les problématiques ainsi que les perspectives et recommandations liées àl’externalisation des BLOBs.Nous commencerons par étudier la configuration par défaut de SharePoint, par laquelle SharePointstocke le contenu d’un document comme un BLOB dans la base de données de contenu. Ensuite, nousexaminerons l’effet multiplicateur et surprenant d’un BLOB sur le stockage tout au long du cycle de viedu document. Nous détaillerons ensuite les deux options que Microsoft a fournies pour l’externalisationdes BLOBs : EBS (External Blob Store) et RBS (Remote Blob Store).Le reste du livre blanc explorera en détail les avantages potentiels de l’externalisation des BLOB,notamment: Réduction des coûts de stockage Optimisation des performances Amélioration de la gestion et diminution de l’empreinte du stockage Restructuration efficace du contenu Meilleure montée en chargeEnfin, nous regarderons les inconvénients potentiels de l’externalisation des BLOBs : la complexité
  4. 4. 2accrue de l’architecture et, en particulier, les considérations à en compte pour la sauvegarde, la restau-ration, la haute disponibilité et la reprise sur sinistre.Ce livre blanc est la première ressource dune série sur loptimisation et la gestion du stockage à êtrepubliée par une équipe de MVP SharePoint. Ce livre blanc a pour ambition de fournir un panoramaglobal et objectif des concepts et problèmes, et de vous donner les éléments pour comprendre, pourpartager avec vos pairs et votre hiérarchie et pour prendre des décisions éclairées sur le rôle del’externalisation des BLOBs dans votre architecture de stockage. Principes de baseCommençons par examiner la configuration par défaut et les options de stockage des documents dansSharePoint.Documents, bases de données et BLOBsDans la plupart des organisations, SharePoint héberge des myriades de documents : fichiers au formatOffice (Word, PowerPoint, Excel…), fichiers PDF, fichiers multimédias (images, podcasts, vidéos…) etautres fichiers comme des cartes, spécifications techniques, documents numérisés…Les utilisateurs téléchargent ou enregistrent les documents dans une ou plusieurs bibliothèques dedocuments dans une collection de sites, ou les attachent aux éléments des listes. Par défaut, cesdocuments sont stockés dans la base de données de contenu de la collection de sites contenant la listeou la bibliothèque de documents.Dans la base de données de contenu, les métadonnées d’un document ou un élément de liste sontstockées dans la table AllUserData. Si un document est stocké dans une bibliothèque, ou comme piècejointe, SharePoint conserve ses propres métadonnées sur le document dans la table AllDocs. Le contenudu document est stocké dans un format de données non structurées nommé BLOB dans la tableAllDocStreams. Des identificateurs globaux uniques (GUID) sont utilisés pour lier les enregistrementsdans ces trois tables. Si le contrôle de version est activé, les métadonnées sur les versions du documentsont stockées dans la table AllDocVersions, et les versions du BLOB sont stockées dans AllDocStreams.SQL Server est un serveur de base de données qui est optimisé pour la performance des donnéesstructurées, relationnelles, où la taille des enregistrements est inférieure à 8 kilo-octets (Ko). Microsoft adéplacé les BLOBs vers une table séparée pour optimiser la performance de SQL et donc de SharePoint.D’un côté il y a une légère perte de performance à chaque ouverture ou enregistrement d’un document, parceque SQL doit joindre AllUserData avec les autres tables avant de pouvoir accéder aux données binaires.D’un autre côté, une myriade de processus qui dépendent des performances de SQL Server bénéficienténormément de ce choix. Cette conception de la base de données de contenu en tables distinctes et liéesest au total un bénéfice net pour SharePoint.Le défi de l’optimisation du stockageL’infrastructure de stockage qui supporte un service SharePoint d’entreprise concerne de nombreuxinterlocuteurs. Les architectes du stockage, les administrateurs de base de données, les administrateursSharePoint, les utilisateurs finaux de SharePoint, et les responsables fonctionnels sont tous concernés
  5. 5. 3par les capacités de l’infrastructure de stockage à être disponible, récupérable, performante,administrable et économique.La configuration standard de SharePoint place tous les contenus dans les bases de données de con-tenu de SQL Server. Cela peut poser un problème de montée en charge. SQL Server est généralementhébergé sur le stockage de niveau 1, le plus rapide, le plus riche en fonctionnalités et le plus coûteux.Si tous les documents sont stockés dans SQL Server, le coût d’utilisation du stockage de niveau 1 pourl’ensemble de la gestion de contenu de l’entreprise pourrait devenir prohibitif.Au fil du temps, le problème augmente, parce qu’année après année, une implémentation typique deSharePoint héberge des quantités croissantes de contenu, bien que la plupart des contenus soientinactifs. Bien que le volume total de contenu augmente souvent de façon exponentielle, le volume dedonnées actives augmente souvent bien moins vite, de façon linéaire. Il en résulte que le stockage hautde gamme de niveau 1 est utilisé en grande partie comme archivage pour des quantités de contenuaugmentant en flèche qui n’ont pas besoin de la performance ou des fonctionnalités du stockage deniveau 1.Vous pourriez penser que déplacer du contenu vers des niveaux de stockage moins chers pénaliseraitla performance. Même si c’était le cas, on pourrait optimiser le stockage en créant une architecture destockage hiérarchique dans laquelle les données moins importantes ou moins actives seraient déplacéesvers les niveaux de stockage moins chers, et au contraire, les données plus importantes ou plus activesseraient conservées sur le stockage de niveau 1. Mais, comme vous le verrez plus tard dans ce livreblanc, il est souvent possible de réduire le coût de stockage tout en augmentant la performance.Externalisation des BLOBsDans les communautés SharePoint et SQL, certains considèrent que SharePoint n’aurait jamais dû êtreconçu pour stocker les documents en tant que BLOBs dans une base de données relationnelle commeSQL Server. En fait, la version 1.0 de SharePoint (SharePoint Portal Server 2001) utilisait Web StorageSystem et pas SQL Server. À partir de la version 2.0 de SharePoint (Windows SharePoint Services etSharePoint Portal Server 2003), le stockage a été déplacé vers SQL Server.Ces dernières années, Microsoft a intégré à SharePoint et SQL Server des options pour sortir les BLOBs deSQL Server vers d’autres niveaux de stockage, en conservant les métadonnées dans la base de données decontenu avec des pointeurs vers les documents associés.EBS et RBSDans SharePoint 2007 Service Pack 1 (SP1), Microsoft a introduit EBS (External Blob Storage). Dans SQLServer 2008, Microsoft a ajouté RBS (Remote Blob Storage). À très haut niveau, EBS et RBS exécutent lamême tâche de base : ils permettent à SharePoint de stocker les BLOBs en dehors de la base de donnéesSQL Server.EBS fait partie du produit SharePoint, à partir de ses versions SharePoint 2007 Service Pack 1 et SharePoint2010. SharePoint 2007 prend en charge l’externalisation des BLOBs uniquement avec EBS.Dans SharePoint 2010, l’externalisation des BLOBs est prise en charge utilisant soit EBS soit RBS. Cependant,EBS a été déclaré obsolète et sera très probablement supprimé des futures versions de SharePoint au profitde RBS.RBS peut être obtenu en téléchargeant le Feature Pack pour SQL Server 2008 R2 sur
  6. 6. 4http://go.microsoft.com/fwlink/?LinkID=177388. Cette version (ou une version plus récente) de RBS estobligatoire pour SharePoint 2010. Les composants serveur de RBS peuvent être installés sur SQL Server 2008R2 ou sur SQL Server 2008 SP1. Les composants clients sont installés sur tous les serveurs Web frontauxSharePoint.Modules et fournisseursEBS et RBS exigent des composants supplémentaires pour gérer la communication entre SharePoint etl’emplacement choisi pour le stockage des BLOBs hors de SQL Server, (appelé magasin d’objets BLOB).EBS utilise une infrastructure de plug-in qui exige un module tiers. RBS expose un ensemble d’interfacesde programmation (API) sur lesquelles les développeurs et les éditeurs de logiciels indépendantspeuvent développer des fournisseurs. Un fournisseur est l’interface entre RBS et un type spécifique demagasin d’objets BLOB.Microsoft a créé le fournisseur FILESTREAM, qui est inclut gratuitement avec les fichiers d’installationde RBS. Le fournisseur FILESTREAM permet d’externaliser les BLOBs vers le système de fichierslocal de SQL Server. Cela peut inclure le stockage attaché directement et les volumes SAN et NASattachés iSCSI, supposant que ces volumes répondent aux exigences de performances de stockage deSharePoint d’au moins 0,25 opérations d’entrée/sortie par seconde (IOPS) et par gigaoctet (Go) stocké,et pas plus de 20ms de temps d’accès au premier octet (TTFB : time-to-first-byte).Bien que beaucoup de gens aient décrié la performance du fournisseur FILESTREAM, l’expériencemontre que sa performance est au moins aussi bonne qu’anticipé. Certains fournisseurs RBS d’éditeursde logiciels indépendants surpassent FILESTREAM, certains font moins bien. Un fournisseur RBS pourune plate-forme de stockage dans le cloud, par exemple, sera à priori plus lent par la nature même dustockage dans le cloud. Il est recommandé de tester les fournisseurs d’externalisation des BLOBs dansvotre environnement pour identifier les différences de performances et surtout pour déterminer si cesdifférences ont un impact notable sur les performances globales de SharePoint.Même en laissant la performance de côté, beaucoup d’organisations se tournent vers les fournisseurstiers pour leur support de diverses plates-formes de stockage et de règles métier pour l’externalisation,les fonctionnalités d’administration, et la maintenance. Les éditeurs de logiciels ont créé des fournisseurspour des magasins d’objets BLOB dans les dossiers partagés sur un serveur distant, sur les plates-formes de stockage dans le cloud, et sur des plates-formes spécifiques NAS et SAN. Les solutions destockage tierces fournissent différents niveaux de gestion de BLOBs basés sur des règles, afin qu’uneorganisation puisse spécifier quels types de BLOBs sont ou ne sont pas externalisés et ainsi créerune plate-forme de gestion du stockage hiérarchisé. L’installation et la configuration de fournisseursRBS tiers proposent généralement une meilleure expérience qu’avec le fournisseur FILESTREAM. Lestâches de maintenance sont généralement automatisées. Et les éditeurs tiers proposent généralementdes fonctionnalités d’analyse et de rapport. De telles fonctionnalités ont un coût, bien sûr, qui doit aussiêtre pris en compte. Plus loin dans ce livre blanc, nous discuterons des fonctionnalités de ces solutionstierces d’externalisation des BLOBs.Parité fonctionnelleIl est important de remarquer que l’externalisation des BLOBs est transparente pour le reste deSharePoint. SharePoint considère les BLOBs comme faisant partie de son référentiel de contenu, où quesoit physiquement situé le contenu.
  7. 7. 5Donc, que les BLOBs soient stockés dans une base de données de contenu ou externalisés, SharePointgère les autorisations pour le contenu et continue à l’indexer. Toutes les fonctionnalités de gestion dedocuments SharePoint, y compris l’extraction et contrôle de versions, continuent à être disponibles.Aucune des fonctionnalités de SharePoint n’est modifiée lors de l’externalisation des BLOBs.Migration vers EBS ou RBSVous pouvez activer EBS ou RBS à tout moment. Vous pouvez aussi modifier les règles qui définissentquels BLOBs sont externalisés quand vous le souhaitez. Il y a des outils (Windows PowerShell dans lecas de RBS) pour analyser la base de données de contenu et déplacer du contenu vers le magasind’objets BLOB.Les sections suivantes examineront les bénéfices et les questions à prendre en compte lors de la miseen œuvre d’une infrastructure de stockage optimisé pour SharePoint. Comme EBS et RBS présententdes avantages et des défis similaires, nous nous référerons en général aux solutions d’externalisation desBLOBs. AvantagesL’externalisation des BLOBs peut procurer des avantages significatifs dans de nombreux domaines:réduction des coûts, amélioration des performances, meilleure gestion du stockage, réduction del’espace occupé, restructuration du contenu et meilleure montée en charge.Réduction du coût de stockageLa première et la plus évidente considération relative à l’optimisation du stockage est le coût, qui est liédirectement à la capacité et au(x) niveau(x) de stockage qui héberge(nt) le contenu SharePoint. Maisdans quelle mesure les BLOBs influent-ils sur la capacité ainsi que les coûts ? La réponse pourrait voussurprendre.Règle des 80 pourcentDans une base de données de contenu typique, les documents (métadonnées et BLOBs) ont tendance àconsommer la majorité de l’espace. Les bases de données de contenu ploient sous le poids des BLOBs.Jusqu’à 80 pourcent des données d’un déploiement typique de SharePoint Foundation sont des fichiersstockés en tant que données BLOB. Ces objets BLOB comprennent les données associées aux fichiersSharePoint.http://msdn.microsoft.com/fr-fr/library/bb802976.aspxCependant, cette “règle des 80 pourcent” ne dit pas toute la vérité. Ce que cette estimation de 80pourcent n’illustre pas, c’est lampleur de limpact du stockage BLOB. Dans un environnement typiquede collaboration, un document est souvent stocké plusieurs fois : l’espace requis pour son stockage estsignificativement supérieur à ce à quoi vous vous attendriez. Examinons l’impact total d’un document etde son stockage BLOB tout au long de son cycle de vie.Stockage de document et de métadonnéesSharePoint prend en charge les documents jusquà une taille de 2 Go
  8. 8. 6(http://technet.microsoft.com/fr-fr/library/cc262787.aspx#ListLibrary), une limite logicielle qui résulte dupointeur 32 bits utilisé dans SQL Server. Il n’y a aucun moyen de dépasser cette limite et de stocker desdocuments plus volumineux dans une base de données de contenu – avec ou sans externalisation desBLOBs.SharePoint inclut une limitation de la taille des fichiers téléchargés qui est configurable par applicationweb. La taille maximale par défaut est de 50 mégaoctets (Mo) —nettement inférieure à la limitemaximum de 2 Go.Cette valeur basse reflète des problématiques pratiques comme la performance du réseau, laperformance du transfert de fichiers volumineux sur HTTP et les attentes des utilisateurs pour laperformance de transfert de fichiers. Beaucoup d’organisations conservent cette limite par défaut,certaines décident de la relever. Si vous choisissez de relever la taille maximale de téléchargement,faites-le lentement et après des tests minutieux.Chaque document d’une bibliothèque SharePoint dispose de métadonnées associées. Certainesmétadonnées sont configurées par lutilisateur, comme certaines colonnes des bibliothèques.D’autres métadonnées sont utilisées en interne par SharePoint. La quantité de métadonnées associées àun document varie principalement en fonction des métadonnées configurées par l’utilisateur.Il est facile de comprendre que les scénarios avec des documents plus volumineux ont une proportionde BLOBs plus importante par rapport aux métadonnées, et inversement les scénarios avec desdocuments plus petits et plus de métadonnées ont cette même proportion plus faible. L’estimation de 80pourcent est basée sur une moyenne de nombreux environnements SharePoint. Mais il y a un hic : undocument est rarement, voire jamais, stocké une seule fois.Versions de documentQuand l’historique des versions est activé pour une bibliothèque de documents, toute modificationapportée à un document ou à ses métadonnées entraîne l’utilisation de stockage supplémentaire. Deuxpoints sont souvent mal compris et ont un impact significatif sur le stockage lorsque le contrôle deversion est activé : 1. Aucune compression différentielle n’est utilisée dans SharePoint. Quand une nouvelle version est enregistrée, l’espace de stockage utilisé est la taille totale du fichier (et pas juste les différences ou incréments entre les versions). Pour faire simple, deux versions d’un document avec des modifications mineures occupent deux fois la taille du document et de ses métadonnées. 2. Une nouvelle version de document est créée dès que le document – ou ses métadonnées- est modifié. Si un document est téléchargé sur une bibliothèque et n’est jamais modifié, mais que ses métadonnées sont modifiées cinq fois au cours dun mois, le stockage occupé par ce document est approximativement cinq fois la taille du document et de ses métadonnées.Quand le contrôle de version est activé, l’impact d’un document sur le stockage est multiplié par lenombre de versions de ce document.Ainsi, il est important de définir des limites pour l’historique des versions – la rétention de versionsillimitées peut mener au gonflement significatif des bases de données.
  9. 9. 7Contenus de corbeilleQuand un document est supprimé, ce document et ses versions sont conservés selon les paramètresde corbeille SharePoint de l’application web. Un utilisateur peut restaurer un document qu’il a supprimédepuis la corbeille.Quand un utilisateur vide la corbeille, le document et ses versions continuent d’être conservés, etpeuvent être restaurés par les administrateurs de la collection de sites, à partir de ce qui est nommé lacorbeille secondaire.Chaque collection de sites dispose d’une corbeille. Toutefois, la corbeille dispose de deux paramètresconfigurables au niveau de l’application web. Ces paramètres s’appliquent à toutes les corbeilles decollection de sites d’une application web.Le premier paramètre de corbeille spécifie le nombre de jours durant lesquels un document supprimésera conservé par la corbeille. Ce paramètre s’applique à partir du moment où le document estsupprimé.Peu importe que le document soit dans la corbeille d’utilisateur ou dans la corbeille secondaire. X joursaprès qu’un document a été supprimé originellement par l’utilisateur, il est supprimé de la corbeille et ledocument est enlevé de la base de données de contenu.Le deuxième paramètre applique un quota de stockage à la corbeille secondaire. Quand les élémentssont déplacés dans la corbeille secondaire, ils sont limités par ce quota. Quand le quota a été atteint, leséléments les plus anciens de la corbeille secondaire sont enlevés pour faire de la place aux élémentsnouvellement supprimés.Le quota est configuré de façon relative au quota de la collection de sites. Donc, si une collection desites est limitée à 50 Go de quota, et la corbeille secondaire est limitée à 50 pourcent du quota, alors lacorbeille secondaire de cette collection de sites est effectivement plafonnée à 25 Go.Par conséquent, l’analyse de l’impact du stockage d’un document (BLOB et métadonnées) sur la basede données de contenu doit prendre en compte le fait que ce document et ses versions continuent àaffecter la base de données de contenu jusqu’à la purge d’un document de la corbeille secondaire.AuditLes activités auditées génèrent des entrées dans le journal d’audit. Le volume de stockage requis pourl’audit peut être significatif, en particulier, si vous auditez tous les Affichages (view). Toutefois, la taille del’entrée d’audit et celle des journaux d’audit ne sont pas liées à la taille du document, ou au fait que lesBLOBs soient stockés dans SQL ou externalisés. Donc, même si vous devez prendre en compte l’auditlors de lestimation des besoins de stockage totaux pour une base de données de contenu(http://technet.microsoft.com/fr-fr/library/cc298801.aspx#Section1), nous n’examinerons pas l’audit de façonplus approfondie dans ce livre blanc.Cache des Office Web AppsAfin d’améliorer la performance de SharePoint quand les applications Web Microsoft Word et Microsoft
  10. 10. 8PowerPoint sont utilisées, celles-ci créent les vues des documents dans un cache appelé cache OfficeWeb Apps.Quand un document est affiché, il peut être extrait du cache. Une vue d’un document est crééeuniquement si elle n’existe pas dans le cache, ou si le document a été modifié depuis le dernier affichagestocké dans le cache. Une tâche du minuteur supprime les documents du cache après une périoded’expiration configurable.Si une application Web SharePoint est associée aux applications Web Microsoft Word ou PowerPoint,c’est la base de données de contenu qui contiendra le cache. Dans une application Web chargée endocuments, le cache peut devenir vraiment volumineux.Par défaut, le cache est plafonné à 100 Go. Il est recommandé de configurer les Office Web Apps pourutiliser une base de données de contenu dédiée au sein de l’application Web SharePoint, et de gérer lataille du cache afin d’optimiser la performance et le stockage. Vous pourrez en savoir plus surhttp://technet.microsoft.com/fr-fr/library/ee837422.aspx.La taille du cache Office Web Apps est la même que les BLOBs soient stockés dans SQL Server ouexternalisés. Elle est purement fonction du nombre et de la taille des documents, de la fréquencedaccès à ces documents, et de la configuration de l’administrateur.En conséquence, bien que le cache Office Web Apps doive être pris en compte pour l’estimation dustockage requis pour une application Web, il n’impactera pas le stockage requis pour les autres basesde données de contenu si il est cantonné dans une base de données dédiée.Bases de données de serviceUn document affecte indirectement le stockage requis par les applications de service. Par exemple,l’accès à un document peut être suivi par l’application du service Web Analytics.Marquer, commenter et évaluer les activités consomme approximativement 9 Ko par entrée dans la basede données de marquage social du service de Profil Utilisateur.Ces données sont relativement négligeables, et ne dépendent ni de l’emplacement des BLOBs (SQLServer ou externalisé) ni de la taille du document.Cependant, le service de recherche est affecté directement par le nombre de documents et parleur taille. Les bases de données d’analyse, de propriétés, et les partitions d’index sont directementimpactées par le nombre et la taille des documents.La planification de capacité pour la recherche est à la fois une science et un art, mais des estimationsapproximatives à partir d’implémentations standard donnent autour de 20 pourcent de la taille totale ducontenu indexé (le corpus).Donc, si vous indexez 1 To de contenu typique, vous pouvez compter approximativement sur 200 God’utilisation de stockage par les bases de données de recherche et l’index. Pour plus d’informations,veuillez consulter le site http://technet.microsoft.com/fr-fr/library/gg750251.aspx.
  11. 11. 9La taille de la base de données de recherche et d’autres services n’est pas impactée par l’externalisationéventuelle des BLOBs.Journaux de transactionsSQL Server enregistre toutes les activités dans le journal de transactions d’une base de donnéesavant de valider une transaction dans la portion de données de la base de données. Les journaux detransactions croissent jusqu’à la sauvegarde de journal, lors de laquelle l’espace utilisé par le journal esteffacé, mais la taille du fichier ne diminue pas.Vous pouvez réduire manuellement la taille d’un journal de transactions SharePoint. C’est utile si unjournal de transactions a été hors de contrôle, mais la meilleure pratique est de gérer la taille du journalde transaction par la gestion de sauvegardes de journaux de transactions.Quand un document est téléchargé ou modifié, le BLOB et les métadonnées sont d’abord écrits dansle journal de transaction. Puis la transaction est validée dans les tableaux appropriés dans la base dedonnées de contenu elle-même.Par conséquent, limpact réel d’un document sur la taille de base de données de contenu totale, incluantle journal de transactions, peut être approximativement calculé deux fois la taille du document multipliépar le nombre de créations et de modifications de versions pendant l’intervalle entre les sauvegardes dejournal.La taille du journal de transactions est directement liée au stockage des BLOBs. Si les BLOBs sontexternalisés et ne sont pas stockés dans la base de données de contenu, alors le BLOB n’est pas écritnon plus dans le journal de transactions SQL Server.Externalisation des BLOBs, capacité et coûtComme vous le voyez, le stockage requis pour un seul document peut énormément varier, il se basesur la rétention de versions, la modification du document ou de ses métadonnées, les paramètres desapplications Web comme la corbeille, les paramètres d’audit, l’utilisation d’Office Web Apps et d’autresservices, et même les stratégies de sauvegarde. Dans un scénario typique de collaboration intensive, undocument actif peut occuper un espace de stockage équivalent à plusieurs fois sa taille.Le stockage des BLOBs dans la base de données de contenu peut être coûteux, aussi bien du point devue du coût fixe que du coût total de possession. Historiquement, beaucoup d’organisations stockent lesdocuments pour la collaboration sur des serveurs de fichier, qui sont relativement bon marché comparésavec le stockage nécessaire à SQL Server pour SharePoint, typiquement de niveau 1 offrant des IOPStrès élevés. Le déplacement d’un tel contenu vers SharePoint et dans le stockage de niveau 1 peutrevenir très cher, surtout en prenant en compte le fait qu’un document peut nécessiter un espace destockage de plusieurs fois sa taille tout au long de son cycle de vie.L’externalisation des BLOBs à proprement parler ne réduit pas l’espace de stockage total de votreinfrastructure SharePoint, sauf pour les journaux de transactions. Mais elle vous permet de transférerla charge de stockage vers des niveaux plus économiques. Les économies de coûts peuvent êtreénormes. Certaines organisations ont calculé des économies de dizaines de millions de dollars
  12. 12. 10(ou d’euros) par an grâce à l’optimisation du stockage concentrée sur l’externalisation des BLOBs. Etcertaines plates-formes de stockage disposent de fonctionnalités qui peuvent réduire l’encombrementde stockage total de SharePoint, en combinaison avec l’externalisation des BLOBs. Ces fonctionnalitésseront abordées plus loin dans ce livre blanc.Optimisation de la PerformanceOn pourrait penser qu’il faut déplacer tous les BLOBs vers les niveaux de stockage moins coûteux afinde réduire le coût de stockage. Mais il vous faut aussi considérer limpact de l’externalisation des BLOBssur la performance de SharePoint.Par exemple, si vous utilisez un fournisseur tiers pour externaliser les BLOBs dans une plate-forme destockage dans le cloud, telle que Amazon ou Azure, il va de soi que les lectures et les écritures dedocuments seront plus lentes que dans le stockage local de SQL Server.Cependant, toutes les externalisations de BLOBs ne réduisent pas la performance. En fait, il est mêmepossible d’augmenter la performance par l’externalisation des BLOBs dans certains scénarios etconfigurations.La question est : Dans quels cas la performance de SharePoint est-elle améliorée avec l’externalisationdes BLOBs, et dans quels cas est-elle dégradée ?La réponse à cette question exige un examen attentif de deux problèmes de performances : La performance de l’accès en lecture et en écriture à un document unique La performance de l’ensemble du service SharePoint, à travers toutes les collections de sites d’une base de données de contenu et à travers tous les contenus hébergés dans SQL Server, dans un scénario réel.La plupart des informations publiées par la communauté SharePoint se concentre uniquement sur lepremier problème, ce qui est malheureusement incomplet et mène à des décisions qui sacrifient laperformance dans les vrais environnements de production.Dans les sections suivantes, nous explorerons ces deux aspects de la performance. Cependant,il est essentiel de se rappeler que la seule façon réelle pour connaître les performances de votreenvironnement SharePoint avec ou sans l’externalisation des BLOBs est de le tester dans des scénariosqui sont réalistes et représentatifs de votre environnement.De plus, vous devez évaluer si la dégradation des performances est détectable par les utilisateurs,et si elle empêche SharePoint de répondre à leurs besoins et aux SLAs liés à la performance. Enfin,vous devez considérer chaque scénario que vous prenez en charge. Les utilisateurs peuvent trouveracceptable que l’accès à un enregistrement archivé soit plus lent que l’accès aux documents surlesquels ils collaborent activement.Performance d’accès à un document uniqueLa configuration standard de SharePoint stocke les BLOBs dans les bases de données de contenuSharePoint. Cela offre une performance optimale dans certains scénarios.
  13. 13. 11Performance de stockage de niveau 1 – De nombreuses organisations réservent des sous-systèmesde stockage de niveau 1 de haute performance pour SQL Server. La performance de la plate-formede stockage SQL Server affecte directement la performance de SharePoint. Les documents accédés àpartir d’un SAN à haute performance offriront de meilleures performances que les documents dont lesBLOBs auront été externalisés vers un stockage dans le cloud public.Petits fichiers – quand un petit document est lu (ou modifié) dans une base de données de contenu, laperformance de cette activité unique est souvent optimale.Fichiers lus fréquemment- Quand un petit document est accédé régulièrement en lecture, le cacheSQL peut améliorer encore la performance de l’accès à ce document. Un document accédé récemmentet mis en cache peut être récupéré de la mémoire cache, plutôt que du disque.Il y a cependant un point à partir duquel les performances de SharePoint sont meilleures avec desBLOBs externalisés, en fonction des scénarios.Les lectures et les écritures d’un petit document unique peuvent être plus rapides quand il est stockédans SQL. La performance de lecture peut également être améliorée grâce au cache SQL. Mais quandles fichiers se développent en taille ou sont accédés moins fréquemment, la performance peut êtreaméliorée par le stockage des BLOBs dans une plate-forme qui est mieux adaptée au stockage defichiers.La performance en écriture atteint plus vite un point d’équilibre que celle de lecture car un BLOB doitêtre écrit deux fois (dans le journal de transactions, puis dans la table de base de données). De plus, lecache n’apporte aucun avantage pour un document nouveau ou modifié. L’augmentation de la taille desdocuments pénalise l’enregistrement des BLOBs, enregistrés deux fois, et réduit la performance globaledes documents stockés dans une base de données de contenu.Heureusement, RBS vous permet de spécifier un seuil de taille de fichier, à partir duquel les BLOBs desdocuments sont externalisés, et en-dessous duquel les BLOBs restent stockés dans la base de donnéesde contenu. Les solutions basées sur EBS ainsi que les solutions tierces basées sur RBS peuventexploiter d’autres règles, par exemple le type de fichier, pour déterminer si un BLOB doit être externaliséou non.Il nexiste aucune formule pour déterminer le seuil de taille de fichier à partir duquel la performanceest améliorée par l’externalisation des BLOBs. Il y a trop de facteurs dans l’équation de performance,notamment les caractéristiques et la fréquence d’accès du document, et les caractéristiques deperformance de plates-formes de stockage sous-jacentes.Nos tests ont montré que les BLOBs supérieurs à 1 Mo se comportent généralement mieux quand ilssont externalisés (en supposant que les performances du magasin d’objets BLOB sont bonnes) alorsque les très petits fichiers inférieurs à 256 Ko ont de meilleures performances quand ils sont stockésdans la base de données de contenu.Nos constatations sont en phase avec le consensus général parmi les consultants selon lequel lesdocuments supérieurs à 512 Ko ou 1 Mo doivent être externalisés. C’est à partir de ce seuil que laperformance est améliorée pour les lectures et les écritures, dans le cas où les plates-formes destockage sous-jacentes ont des performances comparables. Toutefois, l’accès à un document inférieur
  14. 14. 12à 256 Ko est plus rapide avec le BLOB stocké dans la base de données de contenu SQL Server.Entre 256 Ko et 512 Ko ou 1 Mo se trouve un point de bascule qui dépend fortement de la taille et desfréquences d’accès. Par exemple, un fichier de 512 Ko qui est accédé fréquemment en lecture peutbénéficier du cache SQL, et être plus rapide dans la base de données de contenu. Le même fichier,archivé et accédé rarement pour modification, peut avoir de meilleures performances externalisé.L’externalisation des BLOBs a un effet plus important sur les environnements où les fichiers sont souventmodifiés.La performance dépend aussi fortement de la solution spécifique EBS ou RBS que vous utilisez, et descaractéristiques du magasin dobjets BLOB et de son stockage. Par exemple, un magasin dobjets BLOBsur un SAN offrira bien sûr de meilleures performances qu’un magasin dobjets BLOB hébergé dans lecloud public.Le seuil à partir duquel la performance d’accès aux fichiers s’améliore dépend de divers facteurs, etdoit être testé avec votre solution de stockage EBS ou RBS ainsi qu’avec un contenu et des modalitésd’accès représentatifs de vos scénarios d’usage.Performance des Bases de Données de contenu, du serveur SQL et de laferme SharePointIl est inutile à notre avis de mettre trop d’énergie dans des discussions ou des tests sur le seuilexact à partir duquel l’accès à un BLOB est amélioré dans votre environnement, à moins que votreenvironnement ne consiste qu’en un utilisateur accédant à un document. Dans un environnementSharePoint réel, plusieurs utilisateurs accèdent aux documents ainsi qu’aux listes, aux pages,aux workflows, aux services, et aux applications. C’est pourquoi il est plus important de testerl’environnement SharePoint dans des scénarios réels et complexes qui seront représentatifs d’uneutilisation au quotidien.Lorsque de nombreux utilisateurs accèdent à SharePoint, l’impact des BLOBs sur SQL Server estamplifié, et le stockage des objets BLOBs dans une base de données de contenu peut affectersignificativement la performance de l’ensemble de base de données de contenu, celle du serveurexécutant SQL Server et par conséquent celles de la ferme SharePoint.Comme mentionné précédemment, SQL Server est optimisé pour la performance avec des données structurées.Quand vous stockez des données non structurées comme des BLOBs, SQL Server doit compenserà chaque lecture et écriture. SQL Server n’est simplement pas optimisé pour être un serveur de fichiers.La dégradation de la performance due aux BLOBs est aussi vraie hors de SQL Server et SharePoint. Unclient nous a indiqué avoir utilisé la fonctionnalité dans Oracle pour sortir les BLOBs partir de la base dedonnées dans une application métier, et avoir vu les performances monter en flèche.Les effets sur la performance du stockage des BLOBs dans SQL Server sont perçus globalement dansSharePoint, quand des utilisateurs accèdent aux documents, aux pages ou aux affichages de listes.Si une base de données de contenu contient un grand nombre de BLOBs (par exemple une bibliothèquede documents avec beaucoup de fichiers), et un niveau raisonnable d’activité nécessitant l’ accès aux
  15. 15. 13BLOBs, toutes les autres performances sont dégradées. Par exemple, la performance des affichagesdes listes est ralentie. Lorsque certains utilisateurs téléchargent et stockent des BLOBs, l’utilisationdu processeur et de la mémoire augmente en flèche, et la performance est dégradée pour les autresutilisateurs à travers toutes les bases de données de contenu stockées dans le même serveur SQLServer. SQL Server devient le goulet détranglement et la performance de SharePoint souffre.Nous avons observé que la simple existence de BLOBs peut dégrader visiblement la performance del’accès au contenu, même si l’accès que vous mesurez na rien à voir avec un document ou BLOB.Cela est partiellement dû au fait que les services et les administrateurs SharePoint et SQL exécutenten arrière-plan des opérations qui exploitent les BLOBS, comme l’indexation de base de données,l’indexation de recherche, et les opérations de gestion telles que la sauvegarde de base de données –qui implique l’accès aux BLOBs.Quand vous externalisez les BLOBs d’une base de données, la performance de la base de données decontenu et celle de SQL Server (utilisation processeur et mémoire) peuvent en être améliorées. Cela signifieque la performance des affichages de listes, d’autres activités des utilisateurs ainsi que des opérations demaintenance peut être nettement améliorée, même si ces activités ne sont pas liées aux BLOBs.Par conséquent, bien quil soit intéressant de discuter de si un document de 512 Ko ou de 1 Mo doitêtre externalisé ou non pour améliorer la performance d’accès à ce document, notre expérience estqu’une telle discussion détourne de l’impact plus significatif des BLOBs (même les petits) dans lesenvironnements plus complexes.Microsoft a signalé une augmentation de performance de 25 pourcent par l’externalisation des BLOBs,à travers une série de charges de travail d’utilisateur qui reflètent un environnement de collaboration réel.Les conclusions de Microsoft sont résumées ci-dessous. BLOB SQL RBS Gain Taille de base de données – 1To 2 292 Go 26 Go 98,9% Taille de sauvegarde de base de données – 100Go 217 Go 7 Go 96,8% Temps de sauvegarde de base de données – 217Go 2 490 s 38 s 98,5% Temps de défragmentation de base de 120 s 4s 96,7% données – 100Go Temps moyen de réponse de SharePoint 28 ms 21 ms 25,0% Téléchargement de fichier volumineux – 500Mo 55 s 29 s 47,6%Source : La performance SQL Server RBS avec SharePoint Server 2010 et la solution destockage StorSimple : http://www.microsoft.com/download/en/details.aspx?id=14726
  16. 16. 14Nous avons aussi réalisé des tests avancés sur l’impact des BLOBs dans les conditions réellesd’utilisation, et nous en publierons les résultats détaillés de test à une date ultérieure. En ce moment, nosobservations qualitatives et les résultats quantitatifs de Microsoft permettent de conclure que le stockagedes BLOBs dans les bases de données de contenu SQL – même pour les petits BLOBs – peut dégradersignificativement la performance dans les environnements SharePoint réels.Bien sûr, il y a de nombreux facteurs dans cette équation de performance, dont le volume total deBLOBs et les types d’accès. Mais à cause de l’amélioration potentielle de performance de l’ensemblede la base de données et du serveur, vous devez considérer la vue d’ensemble en prenant en comptel’accès aux données au sein d’une base de données de contenu et d’une instance de SQL. Par exemple,vous pouvez décider d’externaliser tous les BLOB supérieurs à 128 Ko ou 256 Ko afin d’améliorerla performance à travers les scénarios les plus utilisés pour les collections de sites d’une base dedonnées de contenu, même si en agissant ainsi, vous pouvez dégrader la performance d’accès auxtrès petits fichiers. Autrement dit, l’ouverture d’un petit fichier de 256 Ko sera peut-être plus lente, maistout le reste sera accéléré. C’est l’une des raisons pour lesquelles vous devez tester la performance del’externalisation des BLOBs dans votre environnement. Il n’existe aucune réponse facile, mais plutôt unseuil qui est unique pour votre utilisation de SharePoint.D’après notre expérience, le potentiel pour l’amélioration de la performance générale est sous-documenté et sous-estimé. De trop nombreuses organisations déterminent le seuil de l’externalisationdes BLOBs uniquement d’après la documentation et les recommandations liées à la performancede l’accès aux BLOBs. En d’autres termes, les organisations définissent un seuil qui peut être idéalpour l’accès aux fichiers, même si ces fichiers ne sont pas accédés régulièrement, aux dépens de laperformance de l’ensemble de la base de données et du serveur.Amélioration de la gestion du stockage et Réduction de l’espaceoccupéQuand vous externalisez les BLOBs vers une plate-forme de stockage autre que SQL Server, vousbénéficiez instantanément de lensemble de fonctionnalités de cette plate-forme. Par exemple, si vousstockez les BLOBs dans un système de fichiers NTFS sur un serveur Windows, vous pouvez activer lechiffrement NTFS. Le chiffrement des BLOBs peut être exigé dans votre environnement réglementaire.Alternativement, vous pouvez stocker les BLOBs dans un volume SAN qui prend en charge linstanceunique (la déduplication). Donc, si les utilisateurs stockent le même document dans plusieursemplacements, la plate-forme de stockage peut reconnaître la duplication et stocker uniquement uneinstance du document.Certaines plates-formes de stockage proposent la compression différentielle, où deux documents trèssemblables sont stockés comme document principal et document de différence. Et beaucoup de plates-formes de stockage peuvent exécuter elles-mêmes la compression de BLOBs.Nous avons mentionné plus tôt dans ce livre blanc qu’un document peut être stocké plusieurs fois dansun environnement typique de collaboration, particulièrement quand le contrôle de version est activé. Detelles fonctionnalités de stockage peuvent alors significativement réduire la capacité totale de stockagerequise pour prendre en charge votre contenu SharePoint, et donc réduire le coût de stockage.
  17. 17. 15Enfin, certaines plates-formes offrent des fonctionnalités de gestion de stockage précieuses. Par exemple,beaucoup de sous-systèmes de stockage prennent en charge les captures instantanées (« snapshots »)comme option de sauvegarde. Quelles que soient les fonctionnalités offertes par votre plate-forme destockage, ces fonctionnalités bénéficient à votre magasin dobjets BLOB.Restructuration de contenu efficaceDans le Service Pack 1 (SP1) de SharePoint 2010, Microsoft a introduit la prise en charge de la copiesuperficielle (« shallow copy »). Cela signifie que vous pouvez déplacer le contenu (comme une collectionde sites) d’une base de données de contenu à l’autre dans une même application Web sans toucher auxBLOBs du magasin d’objets BLOB. Les outils tiers vont plus loin en permettant de restructurer le contenuentre applications Web ou fermes. Seul le contenu de la base de données de contenu (dont les pointeursvers le magasin de BLOBs) est déplacé.Il y a certaines mises en garde et nuances pour cette fonctionnalité, mais c’est un ajout important auxfonctionnalités de SharePoint, car cela permet de restructurer l’architecture logique et la conception d’uneapplication web SharePoint plus facilement et nettement plus vite.Meilleure montée en chargeStocker les BLOBs dans la base de données de contenu limite la capacité à monter en charge deSharePoint si vous utilisez uniquement les outils et la configuration de SharePoint standard. Jusqu’en juillet2011, la recommandation de Microsoft était de limiter les bases de contenu à 200 Go et les collections desites à 100 Go, à moins que ces dernières ne soient seules dans une base de données de contenu.En juillet 2011, la recommandation de Microsoft pour la montée en charge des bases de données decontenu a été considérablement modifiée (pour le mieux). Les bases de données de contenu sont prisesen charge jusqu’à 4 To dans les scénarios de collaboration, sans limite pour les archives de documents.Microsoft a introduit aussi une limite supplémentaire : une base de données de contenu est supportéejusqu’à 60 millions d’éléments, en comptant tous les éléments de liste et les documents de toutes lescollections de sites de la base de données de contenu. Le nombre total déléments dans une base dedonnées de contenu affecte le niveau de service des mises à niveau et mises à jour de SharePoint.Pour une base de données de contenu dotée d’un trop grand nombre de lignes, les performances descorrectifs, mises à jour, Service Packs et mises à niveau peuvent être dégradées au point de ne pas seterminer pendant la fenêtre de maintenance prévue, voire échouer complètement.Toutefois, il y a un nombre de mises en garde liées à la performance et la gestion qui rendent difficiled’approcher ou dépasser la limite d’1 To par base de contenu sans respecter les recommandationssuivantes : Sous-systèmes de stockage de haute performance Outils tiers pour compléter les outils de gestion standards Externalisation des BLOBs Utilisation de fonctionnalités de la couche de stockage pour respecter les niveaux de service pour la restaurationIl est important de noter que l’externalisation des BLOBs peut permettre une meilleure montée en charge(en combinaison avec une bonne architecture, une gouvernance globale,
  18. 18. 16et des outils de gestion efficaces). Par exemple, en externalisant les BLOBs vers un niveau de stockagequi prend en charge les sauvegardes par capture instantanée, vous pouvez réduire considérablement letemps de sauvegarde pour les bases de données de contenu volumineuses.Cependant, l’externalisation des BLOBs ne modifie pas la limite de 4 To pour une base de donnéesde collaboration, ou toute autre limite de capacité ou montée en charge. Quand vous utilisez EBS ouRBS pour externaliser les BLOBs, il vous faut tout de même respecter les limites de taille de la base dedonnées de contenu décrites plus tôt. Autrement dit, externaliser les BLOBs ne signifie pas pour autantque vous pouvez mettre plus de données dans une base de données de contenu.Il convient également de rappeler que l’externalisation des BLOBs en elle-même ne vous permet pas destocker un fichier unique supérieur à 2 Go. C’est une limite physique de la plate-forme SharePoint, et enparticulier de SQL Server. Des solutions tierces permettent de contourner cette limite, mais pas grâce àEBS ou RBS. ConsidérationsComme toute technologie, EBS et RBS ne sont pas des solutions miracles, et l’externalisation des BLOBsn’est pas appropriée pour chaque scénario ou configuration. Nous avons déjà noté que certains scénariospeuvent connaître une détérioration des performances qui doit être évaluée par rapport aux niveaux deservice et aux attentes des utilisateurs. Mais quels sont les autres inconvénients de lexternalisation desBLOBs (les problèmes à prendre en compte)?Complexité architecturale accrueEn externalisant les BLOBs, vous augmentez la complexité de votre architecture de stockage. Que cettecomplexité architecturale se traduise ou non par une gestion plus complexe dépend en grande partie desprocessus et des outils disponibles pour gérer SharePoint.Sauvegarde, Restauration, Haute Disponibilité et Plan de Reprisedes ActivitésLes scénarios les plus critiques pour la plupart des organisations, sont en général liés à la sauvegarde,à la restauration, à la haute disponibilité et à la reprise d’activité après sinistre. Lorsque les BLOBssont stockés dans SQL Server, la maintenance et la gestion de base de données sont simples : lessauvegardes d’une base de données de contenu contiennent tout le contenu, y compris les BLOBs descollections de sites stockées dans cette base de données de contenu.Après l’externalisation des BLOBs, vous devez prendre en compte le magasin d’objets BLOB dans lesplans de sauvegarde, de restauration, de haute disponibilité et de reprise d’activité. Ici, l’histoire peut êtrecomplexe, mais pas nécessairement. La clé est de bien comprendre votre implémentation qui inclut votreconfiguration dEBS ou de RBS, vos outils et vos procédures. Vous devez avoir testé pour vous assurerque vous pouvez satisfaire vos SLAs pour la sauvegarde, la restauration, la haute disponibilité et la reprised’activité.
  19. 19. 17Sauvegarde et Restauration StandardPrenons RBS et le fournisseur FILESTREAM comme exemple. Si vous externalisez les BLOBs avec RBSet FILESTREAM, vous êtes en train d’utiliser une API SQL et un fournisseur pour déterminer ce qui estredirigé vers le magasin d’objets BLOB et ce qui ne l’est pas.Si vous utilisez les APIs de sauvegarde de SharePoint (sauvegarde via lAdministration centrale ouWindows PowerShell), SharePoint demande le contenu de SQL, et SQL fournit le contenu, récupérantles métadonnées provenant de la table AllUserData et les BLOBs provenant du magasin d’objets BLOB.Votre sauvegarde inclura les fichiers du magasin d’objets BLOB. De même, si vous utilisez les APIs desauvegarde de SQL (Sauvegarde via SQL Server Management Studio), votre sauvegarde comprendrales BLOBs du magasin d’objets BLOB. Microsoft prend en charge explicitement la sauvegarde et larestauration de base de données de ferme à l’aide du fournisseur FILESTREAM.Cependant, d’autres fournisseurs RBS, lexternalisation par EBS, et d’autres outils de sauvegarde et derestauration se comportent différemment. Par conséquent, vous devez examiner plusieurs facteurs parrapport aux niveaux de service(SLAs) que vous avez définis pour SharePoint.Point de reprise et perte de données acceptableLes niveaux de service (SLAs) de votre restauration doivent indiquer l’objectif de point de reprise (ouRPO, Recovery Point Objective), qui se rapporte directement à la fréquence des sauvegardes. Si lessauvegardes sont prises toutes les heures, le SLA pour l’objectif de point de reprise est également d’uneheure : la quantité maximale données perdues est égale au temps entre deux sauvegardes.Lors de l’externalisation des BLOBs, vous devez vous assurer que la sauvegarde de votre base dedonnées de contenu SQL et la sauvegarde de votre magasin d’objets BLOB sont compatibles avec lesSLAs que vous avez définis pour SharePoint.L’idéal serait que les sauvegardes de base de données de contenu et de magasin d’objets BLOBsoient synchronisées et maintiennent la cohérence de données. Il y a des solutions tierces logicielles etmatérielles qui atteignent ce but.Certaines solutions logicielles tierces sauvegardent chaque document comme unité complète qui contientles métadonnées et le BLOB. Une telle sauvegarde s’assure que le document peut être récupéré tel qu’ilétait au moment de sa sauvegarde.Certaines plates-formes de stockage supportent les sauvegardes de captures instantanées, qui peuventsauvegarder des téraoctets de données en quelques secondes seulement. De telles solutions peuventêtre coûteuses, mais elles sont souvent critiques dans les scénarios de contenu volumineux. Elles ne sontcependant pas toujours nécessaires, tant que la fenêtre de risque de perte de données est compatibleavec vos SLAs SharePoint.Il est également possible de gérer séparément les sauvegardes dune base de données de contenu et deson magasin d’objets BLOB associé. Il y a beaucoup d’exagération à propos de la complexité de cetteopération. Ce nest pas compliqué du tout, tant que vous comprenez la séquence d’opérations à réaliserainsi que le risque d’une fenêtre supplémentaire de perte de données.
  20. 20. 18Le processus de sauvegarde dune base de données de contenu et de son magasin d’objets BLOBassocié est le suivant : 1. Sauvegarder la base de données de contenu 2. Sauvegarder le magasin d’objets BLOBLe temps entre le début de létape 1 et la fin de létape 2 représente une période de perte de donnéespartielles lors d’une opération de restauration. Considérez que vous sauvegardez la base de donnéesde contenu. Après la fin de la sauvegarde, mais avant de commencer à sauvegarder le magasin d’objetsBLOB, un utilisateur ajoute un document ou une version de document à SharePoint. Le BLOB dudocument entre dans le magasin d’objets BLOB, et est sauvegardé. Les métadonnées et le pointeur auBLOB sont placés dans la base de données de contenu, mais après la sauvegarde.Si une restauration totale est nécessaire, vous devez exécuter les étapes suivantes : 1. Restaurer le magasin d’objets BLOB 2. Restaurer la base de données de contenuLe magasin d’objets BLOB contient le document nouvellement ajouté, mais pas la base de données decontenu, donc le document ne sera pas visible pour SharePoint. Un processus appelé nettoyage dela mémoire sexécute périodiquement pour purger les BLOBs orphelins du magasin d’objets BLOB. Ledocument qui a été ajouté lors de l’intervalle entre la sauvegarde de la base de contenu et la sauvegardedes BLOBs a été effectivement perdu.Il est intéressant de noter que vous navez pas besoin de vous inquiéter autant des suppressions.Considérez quune base de données de contenu est sauvegardée à 1 heure du matin, et qu’un utilisateursupprime de manière définitive un document de SharePoint (y compris les Corbeilles) à 1 heure 10 dumatin.Lorsqu’un document est supprimé de SharePoint, linformation est enlevée de la base de données decontenu, mais le BLOB lui-même nest supprimé que par le processus de nettoyage de la mémoire. Doncle BLOB reste dans le magasin d’objets BLOB.Le magasin d’objets BLOB est alors sauvegardé à 1 heure 15 du matin.Dans un scénario de restauration, le magasin d’objets BLOB est récupéré dabord avec le BLOB orphelindu document supprimé. La base de données de contenu est récupérée dans son état avant que ledocument ait été supprimé. Le document est effectivement totalement restauré tel quil existait à 1 heuredu matin— le moment de la sauvegarde de bases de données de contenu.Par conséquent, la recommandation pour la sauvegarde est de tester la restauration de vos sauvegardespour vous assurer que les BLOBs sont protégés à un niveau qui répond à vos SLAs pour l’objectif de pointde reprise (RPO) et la perte de données. Vous devez valider que votre sauvegarde et votre restaurationfonctionnent comme prévu selon les configurations de votre base de données et de votre magasin d’objetsBLOB, les APIs que vous employez (EBS ou RBS), et les outils spécifiques et les processus que vous avezen place.
  21. 21. 19Fenêtre de sauvegarde et objectif de temps de repriseUne autre considération significative pour les SLAs de sauvegarde et de restauration est le tempsnécessaire pour sauvegarder ou restaurer le contenu. Si vous avez un grand magasin d’objets BLOB, lasauvegarde peut ne pas avoir le temps de s’achever au cours de l’intervalle de maintenance de votre SLA.Et si vous devez restaurer le contenu, cela pourrait prendre trop de temps de transférer la sauvegarde dela bande ou d’un autre média de sauvegarde à votre serveur SQL avant même de commencer à restaurerle contenu.Les outils de gestion standard de SharePoint exigent, pour restaurer le contenu, de commencer par copierou restaurer la base de données sauvegardée depuis vos sauvegardes sur bande ou archives de disquevers SQL Server, puis de procéder à lopération de restauration SharePoint.Jusquà récemment, Microsoft ne supportait les bases de données de contenu que jusqu’à 200 Go. Unedes raisons de cette limite était la de pouvoir proposer des SLAs raisonnables dobjectif de temps dereprise (RTO). Si la taille d’une base de données de contenu est de plusieurs centaines de gigaoctets,sa copie ou sa restauration vers SQL Server peut prendre un temps considérable avant que le contenupuisse être récupéré effectivement.Des solutions tierces matérielles et logicielles peuvent réduire lobjectif de temps de reprise (RTO) demanière significative par différents moyens, y compris les captures instantanées et la capacité de monterdirectement les sauvegardes à distance.Haute disponibilité et Plan de Reprise d’Activité (PRA)Le stockage externalisé de BLOBs doit également être pris en compte pour les scénarios de hautedisponibilité et les plans de reprise d’activité. Pour fournir une haute disponibilité au niveau des bases dedonnées de SharePoint, vous pouvez installer SQL Server sur un cluster, ce qui assure laccès aux basesde données en cas d’indisponibilité du serveur principal du cluster. Vous pouvez utiliser l’envoi de journaux(log shipping) pour créer un serveur de secours à chaud de vos bases de données SQL Server en vuedune reprise après sinistre.SQL Server 2008 R2 propose également la mise en miroir SQL (mirroring), qui offre un accès redondantaux fichiers de bases de données eux-mêmes en cas de corruption ou de défaillance de la plate-forme destockage. Cependant, la mise en miroir de SQL nest pas prise en charge pour les bases de données decontenu qui utilisent RBS pour externaliser les BLOBs.Cependant, chacune de ces approches de haute disponibilité et de reprise d’activité ne protège que lesbases de données de contenu. Le magasin d’objets BLOB doit également être hautement disponible etrécupérable. La configuration qui active le « lien » entre les métadonnées dans la base de données decontenu et un BLOB spécifique dans le magasin d’objets BLOB doit également basculer correctement.Il ny a ni meilleure pratique unique ni « recette » pour configurer la haute disponibilité et la reprise
  22. 22. 20d’activité avec les BLOBs externalisés. Vous devez donc concevoir une solution basée sur vos besoinsmétier et techniques, en fonction de vos plates-formes matérielles et logicielles, de vos équipes, de leurscompétences et de vos procédures.Dans un prochain article, nous examinerons le matériel, les logiciels et les procédures pour supporter lahaute disponibilité, la reprise après sinistre, et la sauvegarde et la restauration. Options pour externaliser les BLOBsMicrosoft propose gratuitement le fournisseur FILESTREAM pour RBS, et pourtant la plupart desentreprises se tournent vers une solution tierce pour prendre en charge l’externalisation des BLOBs etsupporter les SLAs de sauvegarde et restauration des environnements de grande taille. Ces solutionstierces comblent les lacunes entre les besoins métier et les capacités standard de SharePoint.Fonctionnalités d’externalisation des BLOBsLes tables suivantes résument certaines fonctionnalités offertes par les éditeurs de logiciels qui étendentles fonctionnalités du fournisseur FILESTREAM. Dans le cadre de cette table, des solutions tiercesexploitant EBS et RBS sont incluses.Prise en charge pour les versions et le stockage SharePointFONCTIONNALITÉ FILESTREAM SOLUTION TIERCE SharePoint 2010 (Server et Foundation) SharePoint 2007 (MOSS 2007 et WSS v3) Toutes les versions de SQL (2000, 2005, 2008, 2008 R2) Toutes les éditions de SQL (Express/Standard/Enterprise) Externaliser les BLOBs vers DAS, NAS/SAN iSCSI Externaliser les BLOBs vers un partage de fichiers ou stockage WORM Externaliser vers le cloud (Azure, Amazon, etc.) Compression et chiffrement natifs Externaliser vers plusieurs fournisseurs de stockage au sein d’une même base de données de contenu
  23. 23. 21Sauvegarde, récupération, et récupération d’urgenceFONCTIONNALITÉ FILESTREAM SOLUTION TIERCELa sauvegarde standard de SharePoint capture les BLOBset les métadonnéesSauvegardes synchrones, séparées du magasin d’objetsBLOB et de SharePointSauvegarde de la base de données de contenuindépendante du magasin d’objets BLOBRestauration au niveau des élémentsRestauration de toute la plate-formeRestauration sans avoir à restaurer toute la base de donnéesPrise en charge de cycle de vie du contenuFONCTIONNALITÉ FILESTREAM SOLUTION TIERCERestructuration du contenu (copie superficielle) au sein d’uneapplication WebRestructuration du contenu (copie superficielle) d’uneapplication Web à l’autreRéplication de contenuSe connecter aux partages de fichiers et les gérer viaSharePointSe connecter aux partages de médias et les gérer parSharePointPrise en charge de règles métier (type de contenu,métadonnées, date d’accès)Externaliser vers un système de stockage hiérarchisé
  24. 24. 22Examen des solutions tiercesLorsque vous examinez les solutions tierces, évaluez-les pour les caractéristiques suivantes : Performance Prise en charge de la plate-forme de magasin d’objets BLOB de votre choix Système de fichier, SAN, NAS Dossier partagé Stockage dans le cloud Intégration avec votre plate-forme de stockage Règles qui peuvent être appliqués pour déterminer si les BLOBs sont externalisés Taille de fichier Dernière date d’accès Type de contenu Métadonnées Autres règles métier Facilité de gestion Facilité d’installation et de configuration Tâches de maintenance Rapports et supervision Prise en charge des niveaux de service (SLAs) pour la sauvegarde et la restauration de contenu avec fidélité complète des métadonnées et des BLOBs Prise en charge des niveaux de service pour la haute disponibilité Prise en charge des niveaux de service pour la reprise sur sinistre Gestion de la rétention à long terme, de l’archivage et du stockage hiérarchisé CoûtConclusionL’infrastructure de stockage de SharePoint 2010 doit offrir un référentiel disponible, administrableet montant en charge en phase avec les niveaux de service et les attentes des utilisateurs. Plus lesorganisations utilisent SharePoint pour la gestion de contenu et la collaboration, plus les documentsprolifèrent (stockés dans les BLOBs). Conserver les BLOBs dans une base de données de contenuaugmente la charge de stockage de niveau 1, le plus cher. En externalisant les BLOBs, une organisationpeut réduire le coût, optimiser la performance, simplifier la gestion, réduire l’espace de stockagenécessaire, restructurer le contenu, et améliorer la montée en charge. Mais, comme toutes lestechnologies, l’externalisation des BLOBs doit être évaluée en fonction de vos propres scénarios. Vousdevez donc porter beaucoup d’attention à la conception, l’implémentation, et la maintenance d’unearchitecture de stockage qui inclut l’externalisation des BLOBs.RessourcesVeuillez consulter les ressources suivantes, qui donnent des conseils et un contexte complémentaires auxarguments, recommandations et conclusions présentés dans ce livre blanc.
  25. 25. 23Gestion de la capacité SharePoint Server 2010 : limitations et frontières logicielles :http://technet.microsoft.com/fr-fr/library/cc262787.aspx#ColumnSharePoint 2010 : Améliorer les performances de SharePoint 2010 avec RBS :http://technet.microsoft.com/fr-fr/magazine/ff847521.aspxInstaller et configurer RBS (SharePoint Foundation 2010) :http://technet.microsoft.com/fr-fr/library/ee663474.aspxBlog de l’équipe SharePoint : Modifications du stockage des données dans SP1 :http://sharepoint.microsoft.com/blog/Pages/BlogPost.aspx?pID=988MSDN : Stockage externe des objets BLOB (Binary Large Objects) dans SharePoint Foundation :http://msdn.microsoft.com/fr-fr/library/bb802976.aspxLivre blanc : Performance de RBS SQL Server avec SharePoint Server 2010 :http://www.microsoft.com/download/en/details.aspx?id=14726Performance de RBS SQL Server avec SharePoint 2010 et solution de stockage StorSimple :http://www.microsoft.com/download/en/details.aspx?id=14726Estimer les besoins en performances et capacité pour la recherche SharePoint Server 2010 :http://technet.microsoft.com/fr-fr/library/gg750251.aspxGérer le cache Office Web Apps :http://technet.microsoft.com/fr-fr/library/ee837422.aspxRemerciementsLes auteurs souhaitent remercier George Wang, Mary Leigh Mackie et Christopher Musico pour leurscontributions incroyables à ce livre blanc.2011 AvePoint, Inc. Tous droits réservés. Aucune partie de cette publication ne peut être reproduite,stockée dans un système de récupération, ou transmise, à quelque fin ou par quelque moyen que cesoit électronique, mécanique, photocopie, enregistrement ou autre, sans le consentement écrit préalabled’AvePoint, 3 Second Street, Jersey City, NJ 07311, USA.MarquesAvePoint DocAve®, le logo AvePoint, et AvePoint, Inc. sont les marques déposées d’AvePoint, Inc.Microsoft, MS-DOS, Internet Explorer, Microsoft SharePoint Server 2010, Microsoft Office SharePointServer 2007, SharePoint Portal Server 2003, Windows SharePoint Services, Windows SQL server etWindows sont soit les marques déposées soit les marques de Microsoft Corporation. Adobe Acrobat etAcrobat Reader sont les marques d’Adobe Systems, Inc. Toutes les autres marques sont déposées par lessociétés qui en sont propriétaires.
  26. 26. 24ModificationsCe document est fourni uniquement à titre informatif est sujet à modification sans préavis. Malgré toutel’attention apportée à la préparation de ce document pour s’assurer sa précision, AvePoint n’assumeaucune responsabilité résultant des erreurs ou des omissions dans ce document ou de l’utilisation desinformations qu’il contient. AvePoint se réserve le droit de modification dans la conception de ses produitssans réserve et sans notification pour ses utilisateurs.

×