La raison fondamentale de l’importance de la Flash tient à une question d’architecture des systèmes informatiques : si la performance des processeurs a explosé au cours des dernières années, celle des disques durs n’a pas suivi ce qui fait que le stockage est devenu un goulet d’étranglement pour les performances.
Un goulet qu’il est possible de faire disparaître avec la mémoire Flash.
L’impact de la Flash sur les systèmes de stockage est lié à ses caractéristiques uniques en matière de rapport performances/prix. Pour se faire une idée du fossé qui s’est creusé entre stockage et « computer », il suffit de comparer le temps d’accès d’une mémoire vive, d’un disque dur et d’une mémoire Flash.
- Mémoire vive : 2 nanosecondes
- Disque SAS : 5 à 6 millisecondes (le double pour un disque SATA)
- Mémoire Flash de dernière génération : 60 nanosecondes.
Il est sûr que sur des échelles de temps si petites, les différences ne sont pas trop parlantes. Alors prenons comme hypothèse, une échelle de temps plus courante, vous verrez que la différence est énorme :
- Temps d’accès de la mémoire vive = 1s
- Temps d’accès pour la mémoire Flash = 30s
- Temps d’accès pour un disque dur SAS = 28 jours et 23 heures
Concrètement, ça veut dire qu’au lieu d’attendre 1s pour atteindre une donnée en mémoire vive, le processeur doit attendre 30s s’il doit la chercher dans une carte flash locale et près d’un mois s’il lui faut aller la lire sur le disque dur SAS…
Le pire est que ce différentiel va croissant : le temps d’accès aux mémoires continue de s’améliorer, tandis que celui des disques durs n’a plus évolué depuis bientôt dix ans.
VFCache : Projet « Project Lightning », EMC lance ses cartes flash PCIe.
Selon EMC, pour utiliser au mieux les bénéfices qu’apporte la mémoire Flash, il faut appliquer la technologie sur l’ensemble de la chaine qui relie les serveurs au stockage (tiens tiens, un petit pas d’une infrastructure convergente vers l’hyper-convergence chez EMC ? )
EMC a même fait un premier pas dans le monde des serveurs en introduisant la carte VFCache. Cette carte PCI-express Flash s’installe directement dans le serveur qui accède aux données. Comme elle s’installe sur un bus PCI Express, les performances sont optimales car la latence est bien inférieure à celle d’une connexion SAN, ce qui réduit considérablement le goulet d’étranglement.
.
Elle peut être utilisée de deux manières :
- Comme un étage de stockage local à très hautes performances
- Comme un cache vers les données stockées sur les baies de stockage.
La latence d’accès, réduite par la proximité de la Flash et du processeur, en fait une solution pertinente aux besoins des applications transactionnelles, les bases de données, qui sont les plus sensibles à la latence.
.
L’utilisation du SSD fait sauter le goulet d’étranglement que représente le disque dur. Les processeurs Intel affichent une aptitude jusqu’alors inconnue à traiter des données, mais les coupler à des disques durs, c’est comme vouloir satisfaire l’appétit d’un géant avec un grain de riz (ce n’est pas de moi, lire l’article en lien, mais j’aime). Le problème avec la famine en informatique, c’est que faute d’être alimenté en données, un serveur voit ses performances s’effondrer.
.
La carte flash NAND PCIe se comporte comme un cache et accélère les performances I/O (entrées/sorties). Des tests réalisés par EMC ont mis en évidence un triplement de la bande passante de stockage et une réduction de 60% de la latence pour les applications transactionnelles reposant sur des logiciels comme Oracle ou SQL Server. Ces gains sont liés au fait que les données les plus sensibles sont mises en cache par la carte VFCache – ce qui évite au processeur d’aller les chercher sur la baie de stockage.
Sur le serveur d’application, un pilote de filtrage est implémenté avec la carte VFCache. Son rôle est d’intercepter les opérations I/O et de les compare avec sa table de données en mémoire. Si la donnée est déjà dans son cache, il répond à la requête (rappelez-vous que le temps d’accès en mémoire Flash est de 60 ns) en évitant au processeur d’aller les chercher sur la baie de stockage (le temps d’accès d’un disque SAS est de 5 ms).
Malheureusement, cette technologie n’est pas la plus appropriée ni pour les environnements de virtualisation, ni pour le VDI (Virtual Desktop Infrastructure), ni pour la virtualisation du poste de travail, . Mais il était je pense important d'évoquer cette avancée technologique.
Un peu de technologie…
VFCache est basée sur des composants de mémoire flash NAND haut de gamme, en technologie SLC (Single-Level Cell) qu’EMC qualifie de plus performante que le populaire MLC (Multi-Level Cell).
Précédemment fournies par Micron, les cartes VFCache offriront une capacité de 300 Go et seront suivies par des cartes de 700 Go.
Si l’on se base sur la technologie Micron sélectionnée par EMC, ce qui explique le choix du NAND SLC, la capacité des cartes en lecture séquentielle est de 3,2 Go/s sur des blocs de 128 Ko. Elle peut offrir jusqu’à 715.000 IOPS (I/O par seconde). On est encore loin des performances des solutions « Fusion-io », utilisées dans les appliances Nutanix, qui peuvent atteindre 6,7 Go/s pour 1,3 million IOPS, mais ne soyons pas plus royaliste que le roi, .
.
Lire l'article suivant pour comprendre l'intérêt des cartes VFCache