Victoria - Fotolia
Datastax accélère sa base transactionnelle avec la théorie des graphes
DES Graph, nouvelle extension de la version commerciale de la base Open Source Cassandra, permet de trouver des informations de proche en proche. Suivre un chemin plutôt qu’envoyer des requêtes permettrait de conserver des performances linéaires.
Datastax, l’éditeur commercial de la base de données Open Source Cassandra, lance DataStax Enterprise Graph (DSE Graph), une extension qui rend son produit manipulable au travers de graphes. « Désormais, il est possible de trouver des données en puisant dans d’autres données. Par exemple, on va voir qu’un utilisateur a, mettons, cinq liens vers des enregistrements. Parmi ceux-ci, il y a son téléphone. Mais son téléphone est lui même lié à deux utilisateurs. Et voilà, on vient de découvrir un fraudeur qui utilise de fausses coordonnées en un rien de temps, là où il aurait fallu passer des semaines à imaginer quels scripts de requêtes permettraient en SQL de trouver les fraudeurs », commente Jean Villedieu, cofondateur de Linkurious, une PME française qui édite un logiciel éponyme pour naviguer de manière graphique dans les informations stockées par DSE Graph.
Lors de la présentation de DSE Graph, qui s’est tenue mi-avril à Londres, la banque ING, qui a beta-testé la solution, a témoigné que parcourir un chemin de données plutôt que d’accéder à une information au moyen d’une requête lui permettait de maintenir des temps de réponse de quelques millisecondes quelque soit la taille de la base. « En SQL traditionnel, le temps de réponse augmente au fur et à mesure que vous augmentez votre nombre de tables », a précisé Gary Stewart, architecte de données chez ING.
La première base orientée graphe hautement disponible
Les bases de données qui utilisent la théorie des graphes ne sont pas nouvelles. Depuis les années 2000, Neo4J, par exemple, permettait déjà d’enregistrer chaque donnée sous forme d’un nœud lié à d’autres nœuds par l’intermédiaire d’un lien, de sorte à trouver très rapidement les relations entre chaque information. En revanche, DSE Graph est le premier moteur de ce type qui repose sur une base distribuée (de part son fonctionnement éclaté sur plusieurs serveurs plus ou moins distants, Cassandra est réputée hautement disponible, scalable et de latence prédictible). De plus, il bénéficie des atouts de la version commerciale de Cassandra, DataStax Enterprise, à savoir ses modules d’administration, de sécurité et de développement. Tout ceci, fait de DSE Graph la première base orientée graphe opérationnelle pour l’industrie et le commerce.
« Toutes les entreprises d’envergure, investies dans la transformation numérique, ont intérêt à passer aux bases de données Graph. Parce que c’est le meilleur moyen pour personnaliser une relation avec un client, pour contextualiser leurs demandes et mieux répondre à leurs attentes. C’est aussi une solution qui va considérablement améliorer la traçabilité, en particulier dans la grande distribution agroalimentaire où il faut pouvoir suivre et comprendre une chaîne de production pour être conforme aux réglementations. Nous voyons aussi l’intérêt des graphes dans les applications de prédiction de pannes, car ils pourront indiquer aux moteurs de détection d’incidents comment les équipements sont connectés entre eux, quelles incidences ils ont les uns sur les autres, pour découvrir qui déclenche quoi », expose Matthias Broecheler, le directeur de l’ingénierie en charge du développement de DSE Graph chez DataStax.
Il ajoute que tous ces exemples sont des cas concrets de projets à l’étude chez un panel de clients-test qui utilisent la solution depuis février dernier. DSE Graph devrait être disponible sur le marché courant mai.
Des bases plus efficaces... en silos
Sur le plan technique, DSE Graph est la dernière évolution de Titan, une base de données orientée graphe Open Source et développée par la société Aurelius que DataStax a rachetée courant 2015. Outre les modules Enterprise Server (index, partionnement des données) et OpsCenter (administration) propres à DataStax Enterprise, DSE Graph est livré avec un module Studio qui permet aux développeurs de visualiser graphiquement leurs requêtes et une batterie de « Drivers » censés permettre d’intégrer les commandes du langage de graphe Merlin dans tous les kits de développements usuels. Ces pilotes pointent aussi vers les API de DataStax pour effectuer des requêtes dans la base de données.
Les informations traitées par DSE Graph sont celles stockées par Cassandra ; elles peuvent être soit des paires clé-valeur, soit des tables SQL soit des documents JSON (sorte de XML). « Nous assumons de dire qu’il faut conserver des silos de données spécifiques à chaque besoin pour être sûr d’avoir les meilleurs temps de réponse. Il y a un modèle de données pour trouver les relations entre des informations, un pour analyser les événements sur une échelle chronologique et encore un autre pour indexer des documents. Tous sont stockés différemment sur des disques durs et traités différemment par des clusters de calcul propres. Il faut arrêter d’écouter les sirènes d’autres éditeurs qui prétendent proposer des bases de données qui peuvent tout faire », s’emporte Matthias Broecheler en référence aux éditeurs du monde Hadoop, l’autre grande base de données issue du monde Open Source.
Réunis une semaine auparavant à Dublin lors du Hadoop Summit, les éditeurs du monde Hadoop prétendent que la bonne pratique pour croiser les informations issues des moyens modernes que sont les applications Cloud, les smartphones ou encore les objets connectés, est désormais de stocker toutes les données de tous les métiers dans un pot commun (« datalake »), soit exactement l’inverse du modèle plébiscité par DataStax.
Exister en marge d’Hadoop
« Hadoop, c’est de l’analytique. Nous, nous faisons du transactionnel. Nos marchés sont différents », pondère Billy Bosworth, le CEO de DataStax.
A l’instar des Hortonworks, Cloudera et Mapr qui éditent des distributions commerciales d’Hadoop, DataStax prétend prendre la succession des serveurs de bases de données SQL utilisés par les entreprises depuis des décennies. Tous revendiquent entre 500 et 800 clients payants dans le monde et tous mettent en avant des cas d’utilisation similaires de leurs fonctions (détection de fraude quasi instantanée, meilleure connaissance du client, décisions plus proactives...). Cassandra et DSE Graph peuvent être utilisés conjointement avec Apache Solr, pour faire des recherches avancées sur les données, ainsi qu’avec Apache Spark, pour analyser leur contenu, tout comme on le fait depuis Hadoop.
Le fait d’ajouter un module de Graph à Cassandra permet de mieux faire la différence au niveau applicatif. Le produit de DataStax permet désormais de mieux trouver des données en suivant un chemin, alors que les distributions Hadoop servent plutôt à afficher la liste des informations qui correspondent à un critère recherche.
« Notre défi à présent est de faire en sorte que nos produits soient utilisables par des gens qui n’ont pas les compétences techniques traditionnellement nécessaires. Nos clients nous réclament une solution plus automatisée, plus intégrée avec leur existant. Ce sera l’objet de nos prochaines annonces », conclut Billy Bosworth.