REX
BD16_REX
BD16_REX
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Retours d’expériences Big Data en entreprise<br />
NEO4J - SNAP INTERACTIVE<br />
SNAP INTERACTIVE CONQUIERT LE MARCHÉ DE LA RENCONTRE<br />
EN LIGNE AVEC NEO4J<br />
La vocation de la société basée à Manhattan SNAP Interactive, Inc. (OTCBB: STVI) est de permettre aux personnes<br />
d’accéder au 3e degré. Êtes-vous intéressé ? Voici la question posée à tous les utilisateurs de l’application<br />
Web et mobile de rencontre en ligne AYI (AreYouInterested?). Cette question a fait de SNAP l’un des leaders du<br />
développement d’applications pour sites Web et plate- formes mobiles de réseaux sociaux.<br />
Depuis 2005, SNAP cherche à améliorer la réussite des rencontres en ligne en mettant des amis en relation et en<br />
recoupant leurs intérêts. SNAP a choisi d’ex- plorer le filon des données des connexions de 3e degré. Ingénieur<br />
Big Data chez SNAP, David Fox connaissait les statistiques. « La probabilité qu’une personne se connecte avec<br />
un ami du 3e degré est presque la même que pour un ami du 2e degré, où ils ont un ami commun », explique-t-il.<br />
« Il s’agit d’un point essentiel pouvant faire exploser l’engagement et la taille d’un réseau. » Mais ces données sont<br />
extrêmement difficiles à récupérer avec une base de données relationnelle.<br />
Le défi de SNAP consistait à représenter les données de type « amis des amis ». L’équipe ne disposait d’aucun<br />
moyen efficace de trouver les connexions de 3e degré au sein de son immense réseau social, avec plus d’un milliard<br />
d’individus dans le graphe et plus de 7 milliards de relations.<br />
David Fox a exploité Neo4j pour modéliser les données entre les utilisateurs amis et créer des connexions de 3e<br />
degré visibles (c’est-à-dire les amis d’amis ainsi que les amis des amis d’amis) à l’échelle de l’application AYI. Le<br />
retour s’est avéré colossal.<br />
Aujourd’hui, AYI est l’une des applications sociales les plus utilisées sur Internet, avec plus de 70 millions<br />
d’installations, des millions de visiteurs actifs et un par tenariat stratégique avec Match.com. « Nous continuons<br />
à innover avec Neo4j en exploitant la puissance des traversées multi-saut en temps réel pour gérer le volume de<br />
données sociales et sommes passés de 7 à 8 milliards de relations », explique David Fox.<br />
LE DÉFI<br />
À l›origine, le service de SNAP était basé sur Apache Solr et reliait les amis de 2e degré, présentant les données<br />
de type « amis des amis ». L›équipe ne parvenait pas à trouver une solution efficace pour rechercher les connexions<br />
de 3e degré au sein d›un corpus de données comptant plus d›un milliard de nœuds d›individus et plus de 7<br />
milliards de relations. Après avoir minutieusement exploré et testé MySQL, l›équipe a conclu que cette plateforme<br />
ne permettait pas de gérer les connexions de 3e degré ni d›autres problèmes complexes. Le temps nécessaire au<br />
développement et à la maintenance de l›indexation et des jointures aurait été trop important et la solution aurait<br />
été incapable de gérer le trafic et le volume de données existant.<br />
David Fox a alors pris la décision de passer à une base de données orientée graphe et a choisi Neo4j, seule et<br />
unique solution à ses yeux capable de gérer la croissance du service AYI.<br />
POURQUOI NEO4J?<br />
Le choix s’est porté sur Neo4j pour sa flexibilité, sa vitesse et sa sim- plicité d’utilisation. SNAP a ainsi pu proposer<br />
une offre particulière- ment distinctive en améliorant nettement le nombre de recomman- dations de rencontres à<br />
travers l’exploitation des connexions de type<br />
« amis des amis ». Grâce à Neo4j, le développement a été simplifié. Cypher, le langage de requête de Neo4j, a<br />
accéléré la phase d’implé- mentation en facilitant grandement le codage. La possibilité d’utiliser Java en natif a<br />
aidé SNAP à respecter les spécificités en termes de lecture et a offert une vitesse et une flexibilité maximales pour<br />
optimi- ser l’importation d’un volume de données considérable.<br />
LES AVANTAGES<br />
Le service AYI de SNAP offre aujourd’hui des temps de réponse rapi- des sur l’un des graphes sociaux les plus<br />
vastes au monde, comptant plus d’un milliard d’individus, gérant les recommandations de ren- contres entre «<br />
amis d’amis » avec des performances en temps réel constantes. Le choix de Neo4j pour gérer le réseau social de<br />
SNAP a également permis de réduire sensiblement les délais de développe- ment et le coût global par rapport à<br />
MySQL. Neo4j a facilité l’ajout de fonctionnalités et permet des requêtes rapides et flexibles.<br />
Aujourd’hui, 98 % des requêtes sont exécutées plus rapidement que prévu. L’utilisation de Neo4j pour gérer les<br />
relations « amis d’amis » s’avère plus que payante. « Les utilisateurs vont interagir s’ils voient qu’ils ont un ami<br />
en commun, la 3e connexion. SNAP révèle les «amis des amis», générant ainsi un nombre d’utilisateurs de plus<br />
en plus important, ce qui augmente d’autant l’interaction entre les utilisa- teurs et permet une croissance rapide<br />
du réseau. Cela représente un engagement colossal, qui a fait augmenter le nombre de relations de 7 à presque<br />
8 milliards depuis l’implémentation de Neo4j. C’est de bon augure pour notre entreprise », explique David Fox.<br />
Document réalisé par la Société Corp Events - Janvier 2015<br />
77