af83

Philosophy and implementation of big data

Who and why?

J'ai participé cette semaine à la conférence accueillie par la Fondation Télécom le mardi 29 mai dernier en présence de Ted Dunning, Chief Application Architect chez MapR Technologies et participant actif du projet open source Hadoop. Ted Dunning termine un European Tour May, 2012 par un crochet sur paris après avoir visité quelques startup…

Le sujet de cette présentation, pourquoi voyons-nous en ce moment une explosion de l'engouement pour les big data : des ensembles de données qui deviennent tellement volumineux qu'ils en deviennent difficiles à travailler avec des outils classiques de gestion de base de données. Cette recherche Google Trends illustre bien le phénomène
Big data

On peux facilement comprendre que la vague "cloud", les performances de nos machines et les coûts à la demande (pey per use) sont pour quelquechose là-dedans. Les coûts étant moins importants, les entreprises qui engagent des projets big data sont aussi bien des startup que des très grosses entreprises déjà établies. Les uns pour aider la croissance de l'entreprise les autres pour sécuriser leurs positions dominantes.

Celles-ci faisant face à de gigantesques flots continus d'infos provenant de sources disparates (mobile, gps, objets, capteurs, PC, tablettes) doivent trouver comment relever ce défi, car l'analyse des données offre de nombreuses perspectives. Pour une banque, par exemple détecter la fraude à la carte de crédit en fonction des comportements de l'utilisateur de celle-ci dans un déluge d'informations.

graphes

Les bases de données relationnelles ne sont pas particulièrement adaptées pour ce type d'analyse car conçues il y a déjà plusieurs dizaines d'années. Les projets de base de données open source NoSQL permettent de gérer des volumes importants de données, accédés de différents endroits du monde, mais désormais avec les bases de données orientées graphes et des languages comme gremlin de trouver des données de manière très puissante. Comme parcourir un graphe à partir d'un noeud donné et de ce passer de la rédaction d'une requête SQL complexe avec des jointures dont la profondeur n'est pas connue à l'avance. Le système de pipe de gremlin est simplement magique… il permet de réaliser l'équivalent d'une requête utilisant des jointures dont la profondeur n'est pas connue à l'avance.

gremlin>  g.v(1).out.loop(2){it.loops < 3}.name.toString()

Sinon pour les matheux, des documents sont disponibles sur slideshare, dont une présentation expliquant comment il possible de transformer un système de recommandation vers un système de recherche plus "intelligent".

Bon on lance le projet d'un graphe social AF83 à partir des données timetask pour la prochaine code week ? On va pouvoir détecter très rapidement des personnes qui interviennent sur beaucoup de projets…

blog comments powered by Disqus