proposition d`une graphdb « in-memory » distribuée sur data grid
Transcription
proposition d`une graphdb « in-memory » distribuée sur data grid
PROPOSITION D’UNE GRAPHDB DISTRIBUÉE SUR DATA GRID « IN-MEMORY » Contexte : Les grands graphes sont devenus une source importante de recherche. Aujourd’hui ils se retrouvent dans de nombreux domaines. Dans le contexte du Web 2.0, les réseaux sociaux sont devenus le quotidien des internautes, comme moyen de partage et de diffusion de l'information. De ceci, les quantités des informations n’ont pas cessé d’accroitre dans les réseaux sociaux : en nombre d’utilisateurs, informations par utilisateurs et interaction entre utilisateurs. Du point de vue computationnel, les graphes forment la structure la plus adaptée pour modéliser un réseau social. Dans le contexte biomédical, les réseaux biochimiques sont définis par un graphe d’interaction entre protéines, les catalyseurs et inhibiteurs, ces protéines étant codés par des gènes. Ces interactions forment un gigantesque graphe qui doit être analysé dans différent domaines : conception de médicaments, analyse génétiques, etc. Figure 3 le traitement et l’analyse de réseaux sociaux en temps réels nécessitent de nouvelles approches. Les grilles données sont très récentes mais peuvent représenter une alternative très intéressante. Très récemment de nouveaux Frameworks de graphes distribués sont apparus, notamment sous l’impulsion de Google et de Pregel (utilisé pour l’indexation de pages web). Cependant tout ces Frameworks stockent les nœuds et arcs dans un système de fichier. D’autre part, de nouvelles génération de cache distribuées commencent à apparaitre, les data grid (JSR 347). A la différence des caches traditionnelles elles offrent des fonctions d’indexation, de distribution de données, d’API type SQL et OQL, une API pour contrôler le groupement d’objets et surtout une interface pour le traitement distribué type map reduce. Ces nouvelles génération de cache nous offre un nouveau et formidable terrain de jeux pour implémenter un système de stockage et de traitement de graphes en mémoire. Contribution : l’objectif de ce mémoire est (1) d’étudier INFINISPAN (data grid open source), (2) de proposer un modèle d’objet pour les graphes, (3) de proposer une API graphes en s’inspirant de Neo4J et (4) d’implémenter un prototype. En fonction de l’état du prototype l’étudiant pourra effectuer des tests de comparaison avec les solutions de stockage traditionnelles. Organisation: ce mémoire est organisé par l’UNIVERSITÉ en collaboration avec EURA NOVA R&D. L’étudiant sera accompagné par l’équipe d’EURA NOVA R&D et ses experts en traitement de graphes et distribution de données.