Feb 11, 2007

Microsoft applique la Réduction aux serveurs de fichiers

Microsoft, que l'on attend toujours sur le stockage avec une offre enfin étoffée, s'oriente vers l'application de sa technologie de réduction de données, le SIS - Single Instance Storage -, au stockage primaire notamment à son offre de serveurs de fichiers avec Microsoft Windows Storage Server 2003 R2. Souvenez-vous, en 1996, l'éditeur de Redmond innovait en offrant un mécanisme analogue intégré à Exchange v4 pour éliminer le stockage de pièces jointes identiques puis avec RIS - Remote Installation Services - de Windows 2000. Le premier bilan du déploiement interne de cette technologie pour les serveurs de fichiers dans les centres de données et les sites distants de Microsoft a permi une réduction de données de 25 à 40% soit 6,8 To récupérés sur 274 serveurs.

En premiére approximation, l'approche SIS de Microsoft est trés similaire dans son comportement au lien symbolique standard sous Unix à la nuance prés que sous cet environnement, toute cette activité de référencement est manuelle, la suppression du fichier cible "casse" l'effet des liens qui tombe dans le vide et la modification du fichier pointé est immédiatement vue par les autres liens. Dans le cas du SIS Microsoft, la modification du fichier par un utilisateur ne permet qu'à cet utilisateur de le considérer et non de propager ce nouveau contenu à tous les utilisateurs.

L'architecture SIS est composée de 6 éléments: le SIS Groveler, le SIS Storage Filter, le SIS Link, le SIS Common Store, le SIS Administrative Interface et la SIS Backup API. Le SIS Groveler est un service de niveau utilisateur, qui tourne en arrière plan ou avant-plan, qui parcourt le volume NTFS pour déterminer les doublons de fichiers. A noter que si la configuration utilise des points de montage à la place de lettre, la fonction est inutilisable, dommage quand même, ces derniers permettaient de lever la limitation alphabétique. Passons, cet analyseur se base sur la journalisation des événements du système de fichiers pour repérer les fichiers à traiter et calcule ensuite une signature globale au fichier sans capacité de dédupliquer le contenu, segment, bloc ou octet, de ce même fichier. La clé de hash utilisée par SIS fait 128 bits constituée de 2 segments de 64 bits, le premier chargé de stocker la taille du fichier et le second uniquement la signature calculée. Ainsi, dés qu'un fichier change de taille, la comparaison grâce au premier segment est immédiate et sans coût cpu, aucun calcul n'est nécessaire, et au cas où la taille est identique, la comparaison des signatures est activée pour s'assurer de la similitude ou non des fichiers. Dans la phase de calcul et pour réduire la charge cpu, Microsoft met en place un calcul de hash sur 2 fois 4Ko "au milieu" du fichier. Si les hashs sont identiques, le Groveler lance la comparaison binaire sur l'ensemble du fichier et si le fichier est inférieur à 8 Ko, le calcul de hash est sur le fichier complet. La gestion des collisions est parfaitement intégrée. On comprend ainsi la bonne idée de Microsoft qui choisit une portion du fichier pour calculer le hash et comparer les signatures. Si celles-ci sont différentes, la comparaison est finie, les fichiers sont différents, le processus est ainsi simple et rapide sans traitement lourd et long, une bonne idée dans une environnement de serveurs de fichiers. Le SIS Storage Filter est un composant noyau activé par le Groveler qui crée le lien, le fameux SIS Link, en cas de doublon de fichiers. Le rôle de ce filtre est de rédiriger les opérations d'E/S vers la zone commune appelée ici SIS Common Store et ainsi laisser l'application accéder au contenu du fichier. Le modèle SIS préserve les meta-data différentes et partage le contenu du fichier garantissant des noms de fichiers différents, des priviléges ou ACLS propres..., la seule exception concerne les attributs étendus qui imposent des copies différentes même si les fichiers sont identiques. Le SIS Common Store est la zone de stockage des fichiers "redondants" et il existe un seul espace de ce type par volume. Un fichier présent dans cette zone n'est jamais modifié, il est supprimé quand plus aucune référence existe vers ce fichier. Pour administrer l'environement SIS, Microsoft offre une interface command ligne Sisadmin.exe et les éditeurs de solutions de sauvegarde peuvent intégrer la compréhension SIS et en conserver toute sa consistence grâce à l'API SIS Backup (Sisbkup.dll) proposée. Ainsi, les fichiers sauvegardés conservent leur mode SIS de même que les restaurations qui ne multiplient pas les fichiers. J'invite les utilisateurs intéressés par SIS de Microsoft et l'ayant déja mise ne place, de vérifier si le produit de sauvegarde qu'il utilise supporte le SIS sinon Danger, le système de fichiers peut être trop petit à la restauration du volume.

Microsoft avance sur ce sujet et déploit habilement sa technologie SIS sur un environnement adéquat, le monde fichier, démontrant aux utilisateurs un axe nouveau: le TCO Stockage. Néanmoins, cette approche demeure limitée et est incapable aujourd'hui de dédupliquer le contenu du fichier pour augmenter le gain d'espace et d'accentuer l'économie, même si la charge cpu engendrée serait autrement plus forte. La bonne idée fut d'intégrer le SIS au niveau du système de fichiers comme un CDP fichier natif pourrait l'être. Et comme par hazard, mais il n'y en a jamais chez Microsoft, l'éditeur est actif au sein du groupe de travail FCAS de la SNIA dédié au développement du futur standard XAM (eXtensible Access Method) d'accès aux données archivées où sont souvent utilisées des techniques de déduplication. D'ailleurs, le produit CAS* d'EMC, le fameux Centera, d'origine FilePool, société Belge acquise par EMC en 2001, ne propose qu'une déduplication au niveau fichier, est-ce à dire que Microsoft se prépare à entrer sur ce marché ?

*CAS: Content Aware|Addressable Storage (cf. site CAS)

No comments :