L’émergence des technologies de stockage à base de silicium comme la mémoire Flash bouleverse en profondeur le monde du stockage et se traduit par une refonte en profondeur des architectures de stockage.

L’intérêt de la mémoire Flash pour le stockage s’explique par ses performances très élevées par rapport à celles des disques durs traditionnels. La performance en nombre d’opérations par seconde des disques durs n’a guère évolué au cours des 10 dernières années, oscillant entre 80 IOPS pour un disque SATA d’entrée de gamme et environ 200 IOPS pour un disque dur SAS d’entreprise à 15 000 tr/mn. La latence des disques durs les plus rapides plafonne quant à elle à 5 ms. Par comparaison, une mémoire Flash SLC a une latence en lecture d’une vingtaine de microsecondes et d’environ 200 microsecondes en écriture (contre 60 à 70 µs et env. 500 µs pour une Flash MLC).

La première étape de transformation des baies de stockage a été l’ajout de disques Flash, ou SSD, dans les baies de stockage traditionnelles afin de venir doper la capacité du cache en mémoire vive, puis les constructeurs ont aussi utilisé des SSD pour constituer des pools de stockage hybrides, alliant disques durs et SSD, le tout couplé à la mise en œuvre d’algorithmes avancés de déplacement dynamique de données (tiering) afin de doper les performances. C’est notamment ce que propose EMC dans ses baies VNX avec les technologies Fast Cache et Fast VP. Ce choix permet de doper de façon significative la performance des baies, mais aussi de réduire le nombre de disques durs rapides dans les baies et donc non seulement l’espace occupé dans un rack mais aussi la consommation électrique.

Mais les constructeurs n’en sont pas restés là. La seconde étape a été de concevoir des architectures de baies de stockage spécifiquement optimisées pour pousser la Flash dans ses derniers retranchements et donc offrir des performances optimales. Au lieu de performances en centaines de milliers d’IOPS, il est désormais possible d’envisager des performances en millions d’IOPS avec des latences garanties inférieures à la milliseconde. De quoi satisfaire les besoins des applications transactionnelles les plus exigeantes, mais aussi de quoi faire face aux besoins des grands déploiements  de serveurs ou de postes de travail virtualisés.

Les baies 100 % Flash : des performances très élevées et des prix proches de ceux des baies équipées de disques rapides

Un noeud XtremIO

Un noeud XtremIO

Le profil de la baie 100 % Flash idéale est désormais bien cerné. Il s’agit d’une baie à architecture scale-out où chaque nœud dispose de deux contrôleurs actifs motorisés par des puces Xeon à haute performance (fonction du niveau de criticité attendu pour la baie) et pilote un nombre limité de SSD (en général 12 à 25 disques par nœud) raccordés soit via des interfaces SAS rapides soit directement au bus PCIe, afin d’en extraire le plus de performances. Les nœuds sont reliés entre eux par des interfaces à haute performance, en général des liens Infiniband ou des liens 10 ou 40 Gigabit Ethernet – en fait typiquement toute interface supportant le protocole RDMA (Remote Direct Memory Access) afin de minimiser la latence des communications entre nœuds, notamment pour les échanges de métadonnées. L’architecture scale-out présente l’avantage de permettre d’ajouter des nœuds à la baie afin d’accroître à la fois les performances et la capacité en fonction des besoins. Cette capacité d’évolution souple est requise dans des environnements cloud de plus en plus dynamiques et facilite aussi grandement les mises à jour et les migrations.

Enfin, le plus important, la plupart des services de données des baies Flash se font inline, notamment le réordonnancement des entrées/sorties, la compression et la déduplication de données. Cet usage systématique de techniques d’optimisation de données en mémoire permet non seulement de minimiser l’usure de la Flash mais aussi d’optimiser les performances en limitant le nombre d’entrées/sorties sur les cellules Flash. Cela permet aussi de maximiser l’usage de la capacité, donc d’abaisser le coût par Go.

XtremIO d’EMC, la baie 100% Flash leader du marché

C’est cette voie des baies 100% Flash Scale-out dans laquelle EMC s’est engagé avec sa baie de stockage XtremIO, la baie 100% Flash la plus vendue aujourd’hui sur le marché. Les baies scale-out XtremIO (jusqu’à un maximum de 12 nœuds de stockage en cluster avec le firmware 3.0) ont été conçues pour évoluer avec les besoins de stockage des clients et garantir des performances optimales  – La latence mesurée sur les baies XtremIO se situe systématiquement sous la milliseconde -, sans sacrifier la richesse des services de données délivrés.  Ces derniers sont qui plus est fournis via une licence « tout compris » qui assure au client qu’il n’aura pas de surprises. Le prix de la baie inclut tous les services de données et ce quelle que soit le volume de données stocké.

Pour garantir des performances optimales, les données envoyées à la baie XtremIO sont découpées automatiquement en blocs de 4 K. Le contrôleur en prend une empreinte via un mécanisme de Hash puis applique automatiquement ses algorithmes de compression et de déduplication inline en mémoire (la compression et la déduplication sont appliquées en temps réel sur le flux de données et pas en mode post-process, comme sur certaines baies concurrentes). Chaque nœud stocke dans un espace partagé en mémoire vive les métadonnées associées aux données stockées dans la baie (position dans le cluster, informations d’utilisation…) ce qui permet des accès ultrarapides aux métadonnées, sans commune mesure avec ceux des systèmes concurrents, qui stockent leurs métadonnées en Flash.

La "fabric" Infiniband d'XtremIO permet de garantir une latence minimale entre les noeuds de stockage.

La « fabric » Infiniband d’XtremIO permet de garantir une latence minimale entre les noeuds de stockage.

Pour garantir, une latence minimale, chaque nœud XtremIO est relié aux autres nœuds par une fabrique Infiniband et fait usage des capacités RDMA (Remote Direct Memory Access) de cette fabric pour échanger les informations avec ses pairs. Cette architecture innovante permet au système de distribuer de façon équilibrée les données afin qu’elles soient traitées par le contrôleur le plus adapté, par le bon CPU et le bon cœur de ce CPU. La baie garantit ainsi que les performances seront toujours optimales et qu’elles évolueront de façon linéaire avec l’ajout de nœuds additionnels. La déduplication et la compression de données à la volée permettent d’optimiser la capacité et les performances de la baie en fonction du type de données (la déduplication donnera des résultats optimums avec des VM, tandis que la compression sera en général mieux adaptée aux bases de données).

Outre le fait de garantir des performances élevées, XtremIO fournit aussi des services de stockage riches notamment le support du thin-provisioning, des « writable snapshots » (en fait des clones modifiables basés sur des snapshots particulièrement utile pour le test ou le développement, d’autant que leurs performances sont identiques à celle des volumes clonés), et le plein support des API VAAI de VMware avec en plus un plug-in pour la console vCenter. D’autres services sont attendus prochainement comme la réplication RecoverPoint via l’inclusion d’un splitter RecoverPoint directement dans la baie (il est déjà possible d’utiliser EMC RecoverPoint avec la baie XtremIO – de même que VPLEX -, mais le splitter interne simplifiera les déploiements et améliorera les performances)…

Notons aussi qu’EMC fournit un certain nombre d’outils pour permettre aux clients intéressés par la baie de savoir si celle-ci se prête à leur environnement, notamment un outil d’analyser du stockage existant permettant de déterminer les niveaux de compression et de déduplication attendus en cas de migration sur une baie XtremIO.

Notons enfin que les baies XtremIO présentent l’intérêt d’un rapport densité performance très élevé, puisqu’il est possible avec une configuration de quelques unités de rack de délivrer des niveaux de performance qui n’était encore imaginable il y a 3 à 5 ans qu’avec plusieurs racks de baies de disques durs. Avec les économies que cela permet en matière de datacenter et de consommation électrique. Autant de caractéristiques qui expliquent pourquoi la baie XtremIO connaît un succès commercial sans précédent précédent et est aujourd’hui le produit le  plus rapidemnet adopté dans l’histoire des solutions EMC …

En savoir plus sur le web: