Nouvelles opportunités pour les données fortement interconnectées : La base de graphe Neo4j (v5)

1,357 views

Published on

Si vous vous arrachez les cheveux avec de nombreuses jointures et les procédures stockées complexes il est fort possible que vous soyez en train de construire un graphe sans le savoir car les graphes sont partout. Depuis l'ajout d'une couche sociale aux applications web jusqu'à l'analyse d'impact sur un réseau Telecom en passant par la recherche en Biologie, de nombreuses organisations ont adopté les bases de données de graphes et leur modèle de données parfaitement adapté aux requêtes complexes et hautement connectées tout en garantissant des performances exceptionnelles.

Découvrez avec nous ce qu'apporte la puissance de Neo4j à une large variété de clients tels que Adobe, Cisco, Deutsche Telekom, Viadeo ou Glowbl.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,357
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
48
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Social networksRecommendations enginesBusiness intelligenceGeospatial applicationsMDMNetwork and systems managementProduct catalogueWeb analyticsIndexing your slow RDBMS
  • Social networksRecommendations enginesBusiness intelligenceGeospatial applicationsMDMNetwork and systems managementProduct catalogueWeb analyticsIndexing your slow RDBMS
  • Social networksRecommendations enginesBusiness intelligenceGeospatial applicationsMDMNetwork and systems managementProduct catalogueWeb analyticsIndexing your slow RDBMS
  • Social networksRecommendations enginesBusiness intelligenceGeospatial applicationsMDMNetwork and systems managementProduct catalogueWeb analyticsIndexing your slow RDBMS
  • Social networksRecommendations enginesBusiness intelligenceGeospatial applicationsMDMNetwork and systems managementProduct catalogueWeb analyticsIndexing your slow RDBMS
  • Social networksRecommendations enginesBusiness intelligenceGeospatial applicationsMDMNetwork and systems managementProduct catalogueWeb analyticsIndexing your slow RDBMS
  • Social networksRecommendations enginesBusiness intelligenceGeospatial applicationsMDMNetwork and systems managementProduct catalogueWeb analyticsIndexing your slow RDBMS
  • Social networksRecommendations enginesBusiness intelligenceGeospatial applicationsMDMNetwork and systems managementProduct catalogueWeb analyticsIndexing your slow RDBMS
  • Social networksRecommendations enginesBusiness intelligenceGeospatial applicationsMDMNetwork and systems managementProduct catalogueWeb analyticsIndexing your slow RDBMS
  • Social networksRecommendations enginesBusiness intelligenceGeospatial applicationsMDMNetwork and systems managementProduct catalogueWeb analyticsIndexing your slow RDBMS
  • Nouvelles opportunités pour les données fortement interconnectées : La base de graphe Neo4j (v5)

    1. 1. Cédric Fauvet – Votre contact en FranceCedric.fauvet@neotechnology.comTwitter : @Neo4jFr1Confidential - Neo Technology, Inc.Nouvelles opportunités pour les données fortement interconnectées :La base de graphe Neo4j
    2. 2. Agenda• A propos des graphes• Présentation de Neo Technology• Cas d’utilisation clients et génériques• Vision du marché• Technologie Neo4j• Cypher le « SQL » de Neo4j
    3. 3. A propos des graphes :La théorie des graphesAn 840 : Le problème du cavalierLe joueur et théoricien déchecs arabe al-Adliar-Rumi en donne déjà une solution.
    4. 4. A propos des graphes :La théorie des graphesAn 1735 : Le problème des septponts du KönigsbergPasser une seule fois par le même pont.Leonhard EulerMathématicien Suisse
    5. 5. A propos des graphes :La théorie des graphes2013: Les problèmes d’aujourd’hui• Collaboration• Gestion de configuration• Géo-Spatial• Interaction moléculaires (Biologie)• Analyse d’impact• Master Data Management• Gestion de ligne produit• Recommandation• Social
    6. 6. Agenda• A propos des graphes• Présentation de Neo Technology• Cas d’utilisation clients et génériques• Vision du marché• Technologie Neo4j• Cypher le « SQL » de Neo4j
    7. 7. Neo Technology (Neo4j)• Editeur de la base de données graphe Neo4j• Neo4j a été créé en 2000• QG à Palo Alto, Californie, USA• QG ingénierie basé à Malmö, Suède• Employés en France, Allemagne, Angleterre, Suède, USA, Grèce et Malaisie• Support global 24/7• 100,000+ utilisateurs• Top 500 clients tels que Adobe, Cisco, Deutsche Telecom, Telenor, SFR,Lockheed Martin,…• Partenaires locaux ou globaux tels que Accenture• Partenaires technologiques tels que VMware, Informatica et Microsoft• Leader des bases de données Graph• Notre Mission: Aider le monde à donner du sens aux données
    8. 8. Agenda• A propos des graphes• Présentation de Neo Technology• Cas d’utilisation clients et génériques• Vision du marché• Technologie Neo4j• Cypher le « SQL » de Neo4j
    9. 9. Société- Présence mondiale.- 45 millions d’utilisateurs, + 30 000 chaque jour.- Propriétaire des réseaux sociauxApnaCircle (Inde) et Tianji (Chine)Problème- Recommandations temps-réel afin de fidéliser lesutilisateurs et attirer de nouveaux membres.- A l’origine réalisé par un traitement batch de 1h.Suite au succès du projet la durée d’exécution estpassée à un jour puis deux…- Cluster MySQL non scalable et trop lent pour letemps réel.Etude de cas: Réseau socialBénéfices & time frame- Recommandationstemps réel avec Neo4j.- Durée du projet= 8 semainesSolution- Expérience temps réel pour les utilisateurs de Viadeo.- Solution scalable.- Faible coût de maintenance et architecture fiable.
    10. 10. 10Le clientAdobe est le leader mondial des solutions multimédiaset de marketing numérique.Solution- Cluster de Neo4j Enterprise- Composant d’une plus grande infrastructure- Déploiement Multi-régions AWS- Neo4j sélectionné sur une solution custom et OracleBénéfices & time frame- Analyse des données hautement flexible- Sub-second results for large, densely-connected datasets- Expérience de l’utilisateur – Avantage compétitif- Durée du projet : 12 moisDéfinition du problème- Volume de données important lié aux membres,groupes d’utilisateurs, contenu des membres - le toutmassivement interconnecté-Besoin d’en déduire les relations de collaborationbasé sur les contenu utilisateurs.Etude de cas: Web/ISVcollaboration sociale
    11. 11. 11La société- Opérateur téléphonique leader dans les pays nordiquesSolution- Neo4j solution entreprise.- Embarqué et haute disponibilité.- En remplacement de bases de données Oracles.vieilles de 10 ans, Berkeley DB et un environnementmainframe.Définition du problème- Besoin d’un contrôle d’accès fiable pour 5 millionsde clients, souscriptions et accords.- Dépendances complexes entre les groupes,sociétés, individus, comptes, produits,souscriptions, services et accords- Graphs globaux et profonds (Client principaux avec1000 fils, souscriptions et accords)Etude de cas: TélécomBénéfices & time frame- Architecture flexible et dynamique.- Performance exceptionnelle.-Bas coût comparé aux autres alternatives.-Modèle de données extensible supportant l’ajout denouvelles applications et fonctionnalités.
    12. 12. 12Société-Leader mondial de l’infrastructure réseau-Vaste organisation commercialeSolution-2 clusters Neo4J hautement disponibles-Un cluster en production un second en sauvegardedans des Datacenter différents-Au total: 6 bases de données Neo4J EnterpriseembarquéesBénéfices & time frame-Vue temps réel sur les comptes et leurs propriétaires-Capacité de modéliser des règles complexes pour la gestionde la propriété des comptes-Calcul des commissions automatique pour toutel’organisation commerciale-Environ 12 moins de développementDéfinition du problème-Règles complexes régissant la propriété des comptes.-Règles complexes de calcul des commissions-Requêtes complexes dues à la structure des RDBMS-Performances de la base de données Oracleinsuffisante pour une gestion temps réel des comptesEtude de cas:Gestion commerciale de comptes
    13. 13. Cas d’utilisation – Qui sont les plus connectés ?Retail Co.Joe ThePlumber Inc.Retail Co.CanadaRetail Co.USARetail Co.JapanTorontoVancouverMontrealSan FranNew YorkChicagoTokyoKobeOsaka123 Abc St462 Xyz Ave
    14. 14. Cas d’utilisation – Qu’avons nous en commun ?AliceACMEACMEEMEABobRetail Co.FooBar Inc.Sales RepSales RepWorked ForWorked ForSold To
    15. 15. Cas d’utilisation – Quel est le meilleur chemin ?Retail Co.BobACMESteveJaneLizaPaulineWilliamSales RepVPCMOSales RepVP
    16. 16. Requête: Recherche d’un modèleModèleEx: Une fraude
    17. 17. CorrespondanceModèleEx: Une fraude
    18. 18. Pas de correspondanceModèleEx: Une fraude
    19. 19. Requête:Parcours du GrapheEx: Analysed’impact
    20. 20. Noeud de départEx: Analysed’impact
    21. 21. Suivi des relationsEx: Analysed’impact
    22. 22. Evaluation des noeudsEx: Analysed’impact
    23. 23. Agenda• A propos des graphes• Présentation de Neo Technology• Cas d’utilisation clients et génériques• Vision du marché• Technologie Neo4j• Cypher le « SQL » de Neo4j
    24. 24. Trend 1:Exponentialgrowth of data025050075010002007 2008 2009 2010Exabytes of new unique digital informationTendance n°1 :Croissance exponentielle du volume de donnéesExa-octets de nouvelles données uniques
    25. 25. Tendance n°2 :Explosion de la connectivité des données
    26. 26. Complexité = Volume x Connectivité
    27. 27. Couverture fonctionnelle de SQL
    28. 28. Agenda• A propos des graphes• Présentation de Neo Technology• Cas d’utilisation clients et génériques• Vision du marché• Technologie Neo4j• Cypher le « SQL » de Neo4j
    29. 29. Neo4jAdaptéaux données complexes:– Volumineuses– Fortement connectées– Semi-structurées
    30. 30. Caractéristiques de Neo4j• Transactions Full ACID– XA-compliant distributed two-phase commits• Haute disponibilité / Scalabilité*– master-slave réplication avec master Fail-over– * Lecture• Hautes performance en mémoire– Caches évolués full ACID• Langage des requêtes– Cypher– Java APIs– JDBC– Rest API– Ruby
    31. 31. Architecture• Technologie Serveur Java• Service HTTP via Jetty• API REST, admin. web• Plugins & Extensions• API Graph Java embarquée• Noyau de Neo4j : Moteur du graph• Contient les noeuds & relations• Moteur d’indexation• Java NIO• fichiers “memory-mapped”
    32. 32. Agenda• A propos des graphes• Présentation de Neo Technology• Cas d’utilisation clients et génériques• Vision du marché• Technologie Neo4j• Cypher le « SQL » de Neo4j
    33. 33. () --> ()Cypher le langage SQL d’interrogation de Neo4jBasé sur du ACSII-Art
    34. 34. (A) --> (B)A BCypher le langage SQL d’interrogation de Neo4jLes nœuds sont identifiés
    35. 35. A -[:LOVES]-> BLOVESA BCypher le langage SQL d’interrogation de Neo4jRelations
    36. 36. A --> B --> CA B CCypher le langage SQL d’interrogation de Neo4jLes traversées de graphe
    37. 37. A -[*]-> BA BA BA BCypher le langage SQL d’interrogation de Neo4jLes traversées de graphe Dynamiques
    38. 38. Cypher le langage SQL d’interrogation de Neo4jExemple de recherche des amis d’amisSTART john=node:node_auto_index(name = John)MATCH john-[:friend]->()-[:friend]->fofRETURN john, fof
    39. 39. MerciPour aller plus loin :Cédric Fauvet – Votre contact en FranceE-mail : Cedric.fauvet@neotechnology.comTwitter : @Neo4jFrCommunauté Francophone : meetup.com/graphdb-france

    ×