Intelligence Artificielle : changement de paradigme dans le domaine du stockage
Dans le stockage également, l'Intelligence Artificielle a le vent en poupe et peut apporter de nombreux avantages : optimisation des latences, modifications de politique aisées et augmentation des performances.
Bandes magnétiques, disques amovibles, disques durs et SSD – le marché du stockage a connu de nombreuses évolutions depuis les débuts du stockage de données. Et il ne cesse de se diversifier. Les progrès de l'Intelligence Artificielle nous promettent également un stockage des données plus intelligent, et donc plus efficace, plus flexible et plus économique pour les entreprises. Les entreprises désireuses de stocker en toute sécurité des volumes de données toujours plus importants (de plus en plus souvent de l'ordre du pétaoctet) ont désormais un large choix – pourtant, cette offre manque parfois de clarté. Alors, comment trouver la meilleure solution ?
RGPD : stocker et gérer les données en conformité avec la loi
D'une manière générale, les responsables IT sont en recherche d'un archivage des données sur des supports aussi rapides que possible pour pouvoir accéder rapidement et à tout moment aux informations. Mais est-il vraiment pertinent de maintenir l'ensemble des données disponibles sur le support de données le plus performant ? Bien sûr, la Fast Flash est nettement plus rapide que les lecteurs SAS Nearline. Mais la Flash est aussi nettement plus chère.
Archiver l'ensemble de ses données sur Flash n'a de toute façon que peu de sens dans la mesure où la plupart des données ne sont utilisées que de façon occasionnelle. De plus, les règles de compliance exigent souvent que les données soient conservées longtemps, certaines étant par exemple utilisées ponctuellement pour réaliser des analyses de longue durée. Même les jeux de données de sauvegarde n'ont pas à être archivés sur Flash puisqu'ils ne sont employés qu'à des fins de restauration. C'est pourquoi les responsables IT doivent constamment revoir leur stratégie de données afin de déterminer les supports de stockage les mieux adaptés à chaque application.
Un traitement manuel fastidieux
De nos jours encore, les politiques prédéfinies servent à définir précisément quelles données doivent être conservées à quel endroit. Ces politiques sont définies en amont, au moment où les structures correspondantes sont créées. Elles restent alors presque inchangées, même si des modifications minimes peuvent parfois s'avérer nécessaires en cours de fonctionnement. Toutefois, la quantité et surtout la nature des données évoluent rapidement. Si les données étaient autrefois normalisées dans leur grande majorité, en raison des capacités limitées des systèmes informatiques de l'époque, il en va différemment aujourd'hui. L'incessante modification manuelle des politiques devient de plus en plus fastidieuse et sollicite toujours plus de personnel, qui ne peut alors plus consacrer tout le temps nécessaire à d'autres tâches importantes. La complexité croissante des structures de données exige pourtant une modification toujours plus fréquente des politiques de stockage ; en effet, un emplacement de stockage mal choisi peut grever le budget soit parce qu'un support de stockage onéreux est utilisé pour des données non cruciales, soit parce qu'un accès trop lent à des données essentielles perturbe le déroulement des opérations.
L'Intelligence Artificielle, une solution
Mais alors, comment résoudre ce dilemme ? La solution peut être d'utiliser l'Intelligence Artificielle (IA). Il est possible de trouver une méthode automatisée qui permette de procéder en quelques secondes à des modifications sans avoir à intervenir manuellement ; les entreprises peuvent ainsi utiliser des solutions de stockage plus économiques. Au moyen du Machine Learning, un moteur d'IA peut analyser le comportement des utilisateurs et la nature des accès aux données, et affecter des emplacements de stockage appropriés en conséquence. Il peut également faire des projections sur le futur comportement d'utilisation en fonction des schémas auxquels obéissent les accès. Il est ainsi possible d'établir des pronostics quant à l'espace requis ainsi qu'aux performances requises à l'avenir, ces pronostics pouvant se répercuter sur la planification de l'infrastructure et du budget. Un objectif important étant ce faisant d'empêcher l'utilisation de ressources inutiles.
Des décisions intelligentes grâce au cache neuronal
L'utilisation de l'Intelligence Artificielle peut par exemple être assurée au moyen d'un cache neuronal. Ce cache parcourt l'ensemble des données avec des algorithmes conçus pour l'apprentissage automatique, et analyse les schémas auxquels obéissent les accès aux données afin d'établir des corrélations cachées. Il décide alors en conséquence quelles données il est judicieux de mettre en accès immédiat à disposition des applications ou des utilisateurs : les données fréquemment utilisées sont automatiquement stockées dans la RAM (plus rapide que Flash de quelques ordres de grandeur), les données « tièdes » sur Flash et les données les moins utilisées sur des lecteurs SAS Nearline, nettement moins chers.
Réduction des temps de latence et accélération des opérations
Dans une baie de stockage qui combine DRAM, supports Flash (SSD) et lecteurs SAS Nearline, le cache neuronal entraîne une réduction des latences et accélère les accès en lecture et en écriture. La plupart des applications sont orientées vers les transactions et nécessitent au moins deux opérations d'E/S. Une opération sert toujours à intégrer la transaction elle-même dans le protocole, tandis que l'autre constitue le procédé d'écriture des données à proprement parler. Cela a pour conséquence que les latences peuvent se répercuter de façon exorbitante sur les performances. Les temps de réaction de la couche de métadonnées ont ainsi des répercussions sur les performances maximales de l'application. De ce fait, les opérations de lecture et d'écriture telles que les ajouts, les modifications ou les suppressions effectuées dans la structure des métadonnées sont exécutées avec le même temps de latence.
Ces opérations sont exécutées sans prétraitement, comme la suppression des patterns, la compression ou le cryptage, directement dans la DRAM du serveur de stockage. Pendant ce temps, une seconde copie de l'opération d'écriture est créée dans la DRAM d'un nœud de stockage supplémentaire avec un RDMA (Remote Direct Memory Access) de faible latence, et ce n'est qu'alors que la confirmation est envoyée à l'hôte. L'opération d'écriture directement sur la DRAM connectée au CPU du serveur permet d'obtenir une latence globale inférieure à ce que permettrait un accès direct sur un dispositif Flash externe.
De plus, l'utilisation d'un grand pool de stockage unique destiné à accueillir les accès en écriture, à la différence des architectures conventionnelles dans lesquelles le cache en écriture est divisé en sections plus petites, garantit la résistance aux grosses opérations d'écriture en rafale. Les données qui changent fréquemment peuvent ainsi être écrasées avec la latence de la DRAM, de sorte que le cache neuronal peut décider de manière intelligente quels blocs de données peuvent être archivés sur quels supports. Le fait que les données restent plus longtemps dans le cache en écriture a pour effet de soulager le CPU et les backends. De même, le cache neuronal peut aussi accélérer les opérations de lecture en fournissant les données les plus actives dans la DRAM.
L'IA base son apprentissage sur l'analyse de grandes quantités de données et sur l'identification de schémas ou de caractéristiques. Elle aide ainsi les administrateurs IT à réduire leurs dépenses de stockage – qui constituent déjà leur première dépense budgétaire – tout en dégageant un budget supplémentaire pour les investissements dans l'innovation et la transformation.