In-memory : GridGain adapte sa plateforme à l’accroissement des usages
GridGain a lancé la version 8.8.1 de sa plateforme in-memory, basée sur Apache Ignite. L’éditeur entend simplifier sa solution et réduire les coûts et se prépare à moderniser le cœur de sa technologie.
En 2019, GridGain avait revu son modèle économique, notamment en changeant les conditions d’utilisation de son produit. Son objectif était de se protéger des pratiques de certains fournisseurs de cloud. L’éditeur propose désormais trois éditions : Ultimate, Enterprise et communautaire. C’est à l’aune de cette distinction qu’il convient d’accueillir la version 8.8.1 de cette plateforme in-memory. Pour rappel, elle se place comme une couche intermédiaire entre une base de données et une application analytique ou transactionnelle.
La fonctionnalité phare de l’itération 8.8.1 est exclusive à l’Ultimate Edition. En l’occurrence, l’éditeur souhaite proposer une méthode pour améliorer la compression des données. Pour ce faire, il utilise la librairie Zstandard, un algorithme préentraîné, imaginé par les chercheurs de Facebook. Selon GridGain, cela permettrait d’augmenter le ratio de compression de données de 40 à 60 %, afin de réduire l’espace mémoire ainsi que de l’espace disque requis pour stocker les données. En revanche, Zstandard impacte la consommation CPU au moment de son activation.
D’autres limitations demandent pour l’instant une configuration fine. Notamment, l’outil ne compresse que les données au format Binary Object, commun à Ignite.
GridGain doit réduire le TCO de sa solution
Dans la même veine, mais cette fois-ci pour tous les utilisateurs, GridGain 8.8 comprend une technique de défragmentation pour le stockage persistant. Les ingénieurs de la société précisent dans la documentation que cela permet de réduire le coût total de possession. Cela améliorerait les performances quand la couche in-memory communique directement avec les disques. Les auteurs préviennent tout de même qu’il s’agit d’une pratique chère en matière d’opérations I/O.
Par ailleurs, GridGain a revu les quotas de mémoire des JVM préposées aux requêtes SQL. Ce mécanisme doit empêcher aux nœuds d’un cluster de saturer la RAM. L’éditeur ajoute à cela la possibilité de décharger les données au niveau des disques tout en poursuivant leur traitement via SQL.
GridGain entend également améliorer la protection des données en choisissant une couche de chiffrement au repos. Il adopte pour ce faire le standard Transparent Data Encryption (TDE). TDE permet de chiffrer les données sur disque par table/cache et les enregistrements WAL en production. GridGain introduit surtout une méthode pour gérer les clés de cache (stockées au niveau de la mémoire du cluster) et les clés maîtresses.
En outre, les versions Enterprise et Ultimate doivent désormais bénéficier d’un meilleur contrôle des mises à jour, avec la fonctionnalité Rolling Upgrade. Ce mode de déploiement progressif dépend de trois contraintes. Le cluster n’est pas autorisé à joindre les nœuds sous différentes versions à moins que le mode rolling upgrade soit activé. Une fois cette procédure enclenchée, un nœud peut ne se connecter qu’à un seul autre nœud d’une version différente plus volumineux. Les fonctionnalités introduites par la mise à jour ne sont disponibles qu’une fois Rolling update désactivé.
Apache Ignite 3.0, une modernisation nécessaire
Rappelons que le cœur de GridGain n’est autre qu’Apache Ignite, dont la dernière version stable, la 2.9, est accessible depuis juillet 2020. Le principal contributeur de ce projet open source entend préparer la disponibilité de la version 3.0. « Il y a des changements majeurs attendus par la communauté qui ne peuvent pas se faire en version 2.x pour des raisons d’incompatibilité des API, entre autres », notait Valentin Kulichenko, directeur de la gestion produit chez GridGain et membre du comité Ignite lors d’une conférence en septembre 2020. Le responsable estimait qu’il y avait beaucoup de nettoyage à faire, à commencer par la suppression des fonctionnalités qui ne sont plus utilisées.
La communauté veut faciliter l’utilisation de l’IMDG (In-Memory Data Grid) et le moderniser. Cela passe principalement par la simplification de la gestion des schémas (Binary et SQL). Il s’agit de forcer l’association d’un schéma à une table/cache avant sa création. Ainsi le cache ne pourrait manier qu’un seul type de données, mais la précédente option sera également prise en charge. Pour mettre au goût du jour cette technologie, les contributeurs souhaitent adopter GraalVM, la machine virtuelle « universelle » très populaire dans les environnements serverless.
Mais d’abord, la communauté prévoit d’unifier les méthodes de configuration et de déploiement de la technologie, ainsi que faciliter la gestion et la surveillance des API Rest. Ces propositions viennent d’être initiées dans la version alpha1 d’Ignite 3.0 disponible depuis le 26 décembre 2020.
Nikita Ivanov, CTO et cofondateur de GridGain répète à l’envi les avantages d’Apache Ignite de par son support de librairies de machine learning, son intégration avec Spark, avec Tensorflow, ainsi que sa capacité à jouer le rôle de couche in-memory pour des applications IoT. Cependant, HazelCast et Redis Labs prennent une direction similaire. D’autant que ces trois acteurs se sont lancés dans l’aventure du service managé.
À noter que la croissance de GridGain est principalement portée par ses clients existants et par la communauté d’Ignite. En juillet dernier, l’éditeur assurait que ses ventes avaient augmenté de 122 % chez ses clients existants au premier semestre 2020 par rapport à la même période en 2019. Le renouvellement de licence, lui, aurait augmenté de 47 %, tandis que le nombre de clients du support pour Apache Ignite et GridGain Community Edition a crû de 83 %.