Cet article fait partie de notre guide: Bases de données cloud : ce qui les caractérise

Neptune : une planète graphe apparaît dans l’univers AWS

AWS ajoute un service Cloud de bases de données en graphes à ses outils de gestion de données pour garantir une approche multi-modale aux développeurs et aux entreprises. Tinkerpop Gremlin et SparQL servent de moteurs de requêtes.

En matière de base de données, AWS mise aussi sur le multi-modèle. A l’occasion de sa conférence RE :Invent, qui s’est déroulée la semaine dernière à Las Vegas, le n°1 du Cloud a présenté Neptune (en béta privé), un service de bases de données en graphes, rejoignant désormais le cercle de moins en moins fermé des fournisseurs IT supportant ce modèle de données.

Présentée comme des bases NoSQL (pour Not Only SQL, rappelons-le), les bases de données en graphes ont la particularité de modéliser les données sous la forme de graphes en se focalisant sur les relations qui existent entre elles. Nées chez les ténors des réseaux sociaux – à commercer par Facebook -, elles commencent à trouver des adeptes dans les entreprises pour des cas d’usages liées à la détection de fraude, des moteurs de recommandations, la modélisation des connaissances ou encore le milieu scientifique. Bref, des secteurs où l’on doit traiter de gigantesques jeux de données dans lesquels il est nécessaire de cartographier rapidement des relations.

Neo4J, mais aussi IBM, Microsoft, DataStack, MongoDB,…

Depuis plusieurs mois, le marché des bases de données en graphes a pris de l’ampleur. Si Neo4J est l’un des pionniers pure-player du marché, on note une prédominance de projets Open Source, à l’image de Titan qui reste aujourd’hui un socle sur lequel repose nombre de services chez les éditeurs. C’est par exemple le cas de DataStax, qui a doté son édition Enterprise de Cassandra d’une option supportant  les graphes. Mais c’est aussi le cas de MongoDB, pour ce qui est des bases NoSQL.

Les ténors du marché des bases traditionnels ont également ajouté les graphes à leur arsenal. Citons par exemple Microsoft qui a inclus son support dans CosmoDB, son service de base massivement géo-distribuée, mais également IBM avec IBM Graph, présent dans Bluemix (aujourd’hui IBM Cloud). Sans oublier Tibco.

Tous ont toutefois un point commun : proposer une approche multi-modale en matière de gestion des données afin de permettre aux entreprises de choisir le modèle le plus adapté en fonction des jeux de données à traiter.

Chez AWS, Neptune rejoint donc le service de base de données relationnelle, Aurora (base de données relationnelles exploitant les spécificités d’AWS) ou encore RedShift (entrepôt de données), ElastiCache (implémentation d’ElasticSearch) et DynamoDB (une base Document et clé/valeur,  dite NoSQL).

Neptune y greffe le support des graphes, même si ce modèle pouvait déjà être utilisé sur AWS. Cela était possible via l’installation d’un plug-in Titan pour DynamoDB , qui permet de stocker des graphes Titan dans les tables de la base NoSQL.

Tinkerpop Gremlin et SPARQL

Techniquement, Neptune exploite les données stockées dans S3 (elles y sont également sauvegardées) selon 2 modèles standard - c’est aussi ce qui en fait une particularité : Property Graph et  le graphe RDF. Ce dernier (format XML) est bien connu dans la sphère du Web sémantique pour structurer les données. Pour pouvoir interroger ces données, AWS a logiquement doté son service de 2 moteurs de requête : Le standard Open Source Tinkerpop Gremlin, et SPARQL, né chez au sein du W3C pour interroger des graphes RDF– utilisés notamment dans le domaine scientifique pour la structuration de documents.

Interrogé par nos confrères de SearchDataManagement, Doug Henschen, analyste au sein du cabinet Constellation Research, explique qu’avec Neptune, AWS cible clairement les cadres du monde relationnel qui pourraient bien avoir des difficultés à traiter de larges jeux de données en graphes.

 

Pour approfondir sur Base de données