SlideShare une entreprise Scribd logo
1  sur  46
Télécharger pour lire hors ligne
1960 1970 1980 1990 2000 2010 2020 2030
Hierarchical
Relational (+ Object Relational and Object Mapping)
Desktop
Object
NoSQL/NOSQL/NewSQL/Specialised
Graph Databases
Cloud Databases
1960 1970 1980 1990 2000 2010 2020 2030
BASES DE DONNEES
RELATIONNELLES CLASSIQUES
Stocker et récupérer des données
2-3 sauts
dans une
requête
1960 1970 1980 1990 2000 2010 2020 2030
2-3 sauts
dans une
requête
TECHNOLOGIE BIG DATA
Agréger et filtrer des données
1 saut
dans une
requête
BASES DE DONNEES
RELATIONNELLES CLASSIQUES
Stocker et récupérer des données
1960 1970 1980 1990 2000 2010 2020 2030
2-3 sauts
dans une
requête
1 saut
dans une
requête
Des millions
de sauts
BASES DE DONNEES
RELATIONNELLES CLASSIQUES
Stocker et récupérer des données
TECHNOLOGIE BIG DATA
Agréger et filtrer des données Connecter les données
Connecter les données
2-3 hops
in a query
1 hop
in a query
Des millions
de sauts
Stockage et extraction
en temps réel
Traitement parallèle
par lots
Graphe de connaissances temps réel
“Our Neo4j solution is literally thousands of times faster
than the prior MySQL solution, with queries that require
10-100 times less code”
Volker Pacher, Senior Developer
BASES DE DONNEES
RELATIONNELLES CLASSIQUES
Stocker et récupérer des données
TECHNOLOGIE BIG DATA
Agréger et filtrer des données
Adjacence hors indexes
A l’écriture
Les données sont connectées au
moment-même où elles sont
stockées
A la lecture
Extraction ultra-rapide des
données et des relations par
saut de pointeurs
Passage à l’échelle illimité IA et apprentissage
Dévoiler le contexte Sécurité et confidentialité des données
Horizontalement et verticalement Intégrer la science des données
dans les systèmes opérationnels
Utiliser la richesse des données pour
révéler le contexte des données et les
relations de cause à effet en temps réel
Assurer la protection des données et
le respect de la réglementation
• Au sein d’une infrastructure
partagée, les données et les
transactions sont physiquement
isolées
• Plusieurs bases de données
fonctionnent en parallèle
sur un même cluster Neo4j
(ou sur un même serveur autonome)
• Gestion agile “cloud-friendly” :
déplacement facile et rapide de
bases de données d’un cluster à un
autre
Cas d’usage:
• Multi-tenancy: Une même instance de Serveur Neo4j ou
de Cluster Neo4j Cluster peut servir différents groupes
d’utilisateurs/clients au sein d’une organisation.
• Rapid Test/Développement/Déploiement: Les DBAs et
développeurs peuvent créer plusieurs copies de la même
base de données.
• Scalabilité: Les données sont réparties dans des
structures séparées physiquement.
• Elasticité “Cloud-Friendly” : Les bases de données
peuvent être associées à un stockage de type cloud et
être facilement détachées d’un serveur pour être
rattachées à un autre.
La base de données system :
Référentiel interne contenant les informations système,
disponible pour toutes les bases de données (“single” ou
cluster)
Commandes d’administration:
• CREATE|DROP|START|STOP DATABASE name
User commands:
• HTTP API: http://server:port/.../database
• Browser & Cypher Shell: :USE database
• Drivers: Session(database)
• Browser:
La fondation :
Le Cluster Causal
L’évolution :
Fabric
Base de données ACID en mode cluster basé sur le
protocole RAFT:
- Des transactions de graphe avec Cohérence ACID
- Garantit l’intégrité au fil du temps
Replica Servers
Query, View
Core Servers
Synced Cluster
Vous
Modélisation et stockage des
graphes dans des bases de
données Neo4j dédiées, selon
vos besoins métier
Neo4j
Distribution et parallélisation
des requêtes sur ces différentes
bases de données Neo4j lorsque
vous devez regrouper des
résultats
Passage à l’échelle illimité pour Neo4j en ajoutant la scalabilité horizontale
à la puissance du modèle existant de scalabilité verticale.
SHARDING: exploiter un seul graphe étendu
FEDERATION: interroger des graphes disjoints
• Exécution en parallèle de requêtes sur plusieurs bases de données graphes, en combinant ou en
agrégeant les résultats.
• Chaînage des requêtes provenant de différentes bases de données graphe pour produire des
analyses temps réel avancées.
SQL
MATCH (boss)-[:MANAGES*0..3]->(sub), (sub)-[:MANAGES*1..3]->(report)
WHERE boss.name = “John Doe”
RETURN sub.name AS Subordinate, count(report) AS Total
Cypher en Neo4j 3.5
UNWIND corporate.graphIds() AS gid
CALL {
USE corporate.graph( gid )
MATCH (boss)-[:MANAGES*0..3]->(sub),
(sub)-[:MANAGES*1..3]->(report)
RETURN boss.name AS Boss,
sub.name AS Subordinate,
count(report) AS Total
}
RETURN Boss, Subordinate, Total ORDER BY Total
Cypher en Neo4j 4.0
http://ldbcouncil.org/developer/snb and https://neo4j.com/fosdem20
Distribution du benchmark “LDBC Social Network”
• 1-shard pour le graphe Persons
• N-shards pour le graphe Forums
http://ldbcouncil.org/developer/snb and https://neo4j.com/fosdem20
Distribution du benchmark “LDBC Social Network”
Latence réduite jusqu’à 300x
Amélioration de performances jusqu’à 10x
Premiers résultats !
BobJoe
• Conçue pour de nouveaux cas d’usage - PII, credit card,
patient information, etc.
• Basée sur le Contrôle d’accès en fonction des rôles
(RBAC) pour les graphes
• Restrictions sur les données pouvant être accédées par
différents utilisateurs, appliquées à toutes les
interactions avec la base de données
• Vue sécurité implicite sur les données pour chaque
utilisateur via des définitions de sécurité basées sur le
schéma
• Des permissions Grant/Deny pour les opérations sur les
données TRAVERSE, READ ou WRITE, basées sur les
labels, les types de relations ou la base de données et
sur les noms des propriétés
• Les règles de sécurité sont dupliquées sur l’ensemble
du cluster grâce aux rôles associés aux utilisateurs
Baseline_Personnel
_Security_Standard
Security_Check Counter_Terrorism
_Check
Developed_Vetting
• L’agent du centre d’appel a besoin du nom du médecin mais ne
doit pas avoir accès au diagnostic
• Le médecin doit pouvoir consulter les dossiers des patients et les
diagnostics
// Doctors get wide-ranging access
GRANT ACCESS ON DATABASE healthcare TO doctor;
GRANT TRAVERSE ON GRAPH healthcare TO doctor;
GRANT READ {*} ON GRAPH healthcare TO doctor;
GRANT WRITE ON GRAPH healthcare TO doctor;
// Agents get narrower access
GRANT ACCESS ON DATABASE healthcare TO agent;
GRANT TRAVERSE {*} ON GRAPH healthcare TO agent;
GRANT READ {Name} ON GRAPH healthcare NODES Doctor
TO agent;
GRANT READ {Name} ON GRAPH healthcare NODES Patient
TO agent;
MATCH (:CallcenterAgent {name: 'Alice'})
<-[:CALLED]-(p:Patient)-[:HAS_DIAGNOSIS]-(dia)
<-[:ESTABLISHED]-(d:Doctor)
RETURN p.name, d.name, dia.name;
• Contrôle des flux dans toute la chaîne, permettant à l’application cliente de contrôler entièrement la
production et le flux des enregistrements dans un résultat
• Exécution Synchrone/Asynchrone
• Basée sur les “reactive streams” avec une librairie backpressure non-bloquante
• Les applications clientes peuvent extraire ou rejeter tout le résultat ou N éléments
•
• Exposée via une API reactive dans les Drivers Neo4j v4.0
• Cas d’Usage :
• Requêtes longues / résultats volumineux
• Résultats paginés
• Clients légers
String query = "MATCH (a:Person) RETURN a.name";
try (Session session = driver.session()) {
StatementResult result = session.run(query);
while (result.hasNext()) {
Record record = result.next();
String name = record.get(0).asString();
if (name.equals("Emil Eifrem")) {
break; // Looks ok, but whoops!
}
System.out.println(name);
}
}
String query = "MATCH (a:Person) RETURN a.name";
return Flux.using(driver::rxSession,
session -> {
RxStatementResult result = session.run(query);
return Flux.from(result.records())
.limitRate(10)
.map(record -> record.get(0).asString())
.takeUntil(name ->
name.equals("Emil Eifrem"))
.doOnNext(System.out::println)
.then( /* discard example records */ );
}, RxSession::close);
Basée sur une fondation Neo4j native et robuste,
Neo4j 4.0 apporte:
La scalabilité illimitée avec le sharding & la fédération
Une architecture 100% reactive adaptée aux applications modernes
Des contrôles de sécurité granulaires pour la sécurité et la vie privée
Une souplesse de déploiement avec le multi-base de données
https://neo4j.com/download
27
Neo4j Desktop
D’une simple idée de graphe à Neo4j en production
28
Neo4j Desktop
Les outils indispensables
- Neo4j Browser pour éditer les requêtes Cypher
- Neo4j Bloom, l’interface intuitive d’exploration de graphes
- Les outils des Neo4j Labs : Neo4j ETL, Halin, Query Log Analyzer, NEuler
- Et bien d’autres applications fantastiques de Kineviz, yWorks, et autres !
29
Neo4j Desktop
Connexion aux bases de données Neo4j, où qu’elles soient
- instances uniques locales de développement et d’expérimentation
- déploiements sur site dans des environnements de test et d’intégration
- déploiements en production dans le cloud avec Neo4j Aura
30
Neo4j Desktop
Facilite le travail des développeurs en 2020
- intégration avec le système de fichiers local
- outils CLI tooling pour s’intégrer avec vos plates-formes de build
- modèles de projets pour développer des applications
- prototypage facile d’applications avec interface utilisateur
- développement GraphQL de qualité
- excellente intégration avec Aura
Flexible Fiable Orienté développeur
● Zéro Maintenance
● Scalabilité à la demande
● Tarification simple,
basée sur le capacitaire
● 100% haute dispo,
redémarrage automatique,
configuration en mode cluster
● Intégrité & Durabilité des
données
● Sécurité et cryptage de bout
en bout
● Performance graphe native
● Le langage d’interrogation de
graphes le + populaire au
monde
● Vaste couverture des langages
- drivers pour Java, .NET,
JavaScript, Python, Go, Spring,
etc.
Visualisation de graphes
avec Neo4j
Neo4j Bloom
Sur étagère avec Neo4j
Exclusivement sur les bases
graphes Neo4j
Centré sur des besoins ad-hoc
d’exploration de graphes
Paradigme d’exploration “Search
first”
Pour les data analysts, data
scientists et les développeurs
Boîtes à outils de
visualisation
Editeurs tiers e.g. Ogma, Keylines,
vis.js, d3.js, sigma.js, yFiles
Besoin de développement
d’applications custom ou
d’intégration de visualisations
Parfois supportées par des
fournisseurs
Développements spécifiques parfois
nécessaires
Offrent des APIs robustes pour un
contrôle souple de l’expérience
utilisateur
Pour les développeurs d’applications
Outils de BI
Supportés par des éditeurs tiers
e.g. Tableau, Power BI, Qlik
Création de rapports et tableaux de
bord associant diverses sources de
données et de nombreux types de
visualisation
Non optimisés pour les données de
graphe - requièrent un connecteur
Neo4j spécifique
Pour les data analysts et
utilisateurs métier
Apps de visualisation
de graphes
Supportés par des éditeurs tiers e.g.
Linkurious, Kineviz, Graphileon
Purpose-built applications for specific
domains and graph visualization needs
Supporte plusieurs modèles graphe &
sources de données
Capacité de personnalisation et
d’intégration
Pour les data analysts, data scientists et
utilisateurs métier
Peu d’expertise technique Forte implication technique
+ #utilisateurs +++ #utilisateurs
Apprentissage autonome Gros effort d’encadrement
Tableau
JDBC
Neo4j
BI Connector
SQL
Cypher
Business/Data Analyst
Investigator
Data Scientist
Perspective
Recherche
Visualisation
Exploration
Inspection
Edition
Explorer visuellement les Graphes
Prototyper + rapidement
Collaboration entre équipes
Recherche avec
auto-complétion / suggestions
automatiques
Couleurs, tailles et icônes
ajustables
Visualisation, Exploration et
Découverte
Panorame, Zoom et Sélection
Navigateur et éditeur de
propriétés
Couleurs et tailles flexibles Style utilisant les propriétés
Développement du graphe par type
de relation ou par type de voisin
Recherche insensible à la casse Spécification des types de paramètres Export de données CSV
Recettes & Analytics
orientées graphe
ML & IA augmentés
par les graphes
Graph Data Science
La GDS est une approche scientifique pour acquérir des connaissances sur les
relations et les structures des données, généralement pour alimenter des prévisions
Elle utilise des méthodes pluridisciplinaires incluant les requêtes,
les statistiques, les algorithmes et l'apprentissage automatique.
`
Répondre à des questions spécifiques afin de mieux
comprendre les connections entre données
actuelles et historiques
Les approches incluent généralement des requêtes
et des algorithmes globaux et l'utilisation directe des
résultats
Modèles d’entraînement (ML) fondés sur des
données “graphes”
Utilisés pour simuler des décisions humaines et
probabilistes au sein d’une solution/application
(Système IA)
Optimisée
pour les Analytics
Exploitez des structures de données
personnalisées optimisées pour les
traversées et l’agrégation globales
Partitionnez et refactorez votre
graphe pour des cas d’utilisation
spécifiques
Des Algorithmes pour
créer de la connaissance
Algorithmes robustes fortement
parallélisés et applicables à
plusieurs milliards de noeuds
Accès rapide à des dizaines de
tutoriels / expérimentations
Interface
intuitive
API drastiquement simplifiée et
standardisée permettant des
configurations personnalisées
Documentation, formation, et
exemples disponibles => montée en
compétences facile
La librairie Graph Algos devient la
Produit Supporté, en Développement Dynamique & Continu
Graph Data Science Library
Parallel BFS
Parallel DFS
Shortest Path
Single Source Shortest
path
All Pairs Shortest Path
Minimum Spanning Tree
A* Shortest Path
Yen’s K-Shortest Path
Minimum Spanning Tree
Random Walk
Degree Centrality
Closeness Centrality
(inc. harmonic,
Dangalchev, Wasserman
& Faust)
Betweenness Centrality
Approx. Betweenness
Centrality
Page Rank
Personalized Page Rank
ArticleRank
Eigenvector Centrality
Triangle Count
Clustering Coefficients
Connected Components
(aka Union Find)
Strongly Connected
Components
Label Propagation
Louvain Modularity
Balanced Triad
Adamic Adar
Common Neighbours
Preferential Attachment
Resource Allocations
Same Community
Total Neighbours
Euclidean Distance
Cosine Similarity
Jaccard Similarity
Overlap Similarity
Pearson Similarity
Approximate KNN
Pathfinding
& Search
Centrality /
Importance
Community
Detection
Link
Prediction
Similarity
Projections analytiques:
- Structure de données spécialisée pour les
algorithmes, supporte des milliards de
noeuds
- Loaders Cypher pour l’expérimentation
- Remodeler, combiner, agréger et dédupliquer
rapidement vos données transactionnelles
- Prise en charge des noeuds multi-labels, des
types de relations et des propriétés
- Gestion parallèle en mémoire d’algorithmes
de graphes simultanés
- Réduction drastique de l’empreinte mémoire
Algorithmes de graphes & outils :
- >40 algorithmes dans 5 catégories: détection de
communauté, centralité, similarité, parcours et
prédiction de lien
- Algorithmes complémentaires (génération de
graphes, encodage à chaud, random walk)
- Aperçu de nouvelles implémentations
(namespaces alpha & beta)
- Les algorithmes scalables supportés comprennent
le seeding, le déterminisme et les calculs
incrémentiels
- Mode d’estimation des besoins en mémoire
• Graph Data Science Library
• Bloom 1.2
• rule-based styling
• https://neo4j.com/sandbox
Déjà disponibles :
• Java, .NET, JavaScript, Spring Data Neo4j Drivers ✅
• Neo4j Desktop ✅
• Neo4j Browser ✅
Travaux en cours :
• Python (T2) & Go (T4) - Coming!
• Graph Data Science Library (T2) - Coming!
• Bloom T2 - Coming!
• Aura (T2) - Coming!
https://www.linkedin.com/in/nicolas-rouyer-neo4j
@rrrouyer

Contenu connexe

Tendances

Datastax-fraud_detection_webinar
Datastax-fraud_detection_webinarDatastax-fraud_detection_webinar
Datastax-fraud_detection_webinarDataStax
 
Analytics & Machine Learning avec la Data Virtualization
Analytics & Machine Learning avec la Data VirtualizationAnalytics & Machine Learning avec la Data Virtualization
Analytics & Machine Learning avec la Data VirtualizationDenodo
 
Neo4j et ses cas d'usages
Neo4j et ses cas d'usagesNeo4j et ses cas d'usages
Neo4j et ses cas d'usagesNeo4j
 
Réussissez vos projets d’analytique self-service avec une couche de services ...
Réussissez vos projets d’analytique self-service avec une couche de services ...Réussissez vos projets d’analytique self-service avec une couche de services ...
Réussissez vos projets d’analytique self-service avec une couche de services ...Denodo
 
CDAP, la boîte à outil pour concevoir vos applications Big Data
CDAP,  la boîte à outil pour concevoir vos applications Big DataCDAP,  la boîte à outil pour concevoir vos applications Big Data
CDAP, la boîte à outil pour concevoir vos applications Big DataSynaltic Group
 
Comment M6 personnalise l’expérience utilisateur du service 6Play avec DataSt...
Comment M6 personnalise l’expérience utilisateur du service 6Play avec DataSt...Comment M6 personnalise l’expérience utilisateur du service 6Play avec DataSt...
Comment M6 personnalise l’expérience utilisateur du service 6Play avec DataSt...DataStax
 
Simplifiez vos architectures Cloud avec la Data Virtualization
Simplifiez vos architectures Cloud avec la Data VirtualizationSimplifiez vos architectures Cloud avec la Data Virtualization
Simplifiez vos architectures Cloud avec la Data VirtualizationDenodo
 
Enterprise Data Hub - La Clé de la Transformation de la Gestion de Données d'...
Enterprise Data Hub - La Clé de la Transformation de la Gestion de Données d'...Enterprise Data Hub - La Clé de la Transformation de la Gestion de Données d'...
Enterprise Data Hub - La Clé de la Transformation de la Gestion de Données d'...Excelerate Systems
 
Session découverte de la Data Virtualization
Session découverte de la Data VirtualizationSession découverte de la Data Virtualization
Session découverte de la Data VirtualizationDenodo
 
SQL Saturday Paris 2015 - Polybase
SQL Saturday Paris 2015 - PolybaseSQL Saturday Paris 2015 - Polybase
SQL Saturday Paris 2015 - PolybaseRomain Casteres
 
Delta lake - des data lake fiables a grande échelle
Delta lake - des data lake fiables a grande échelleDelta lake - des data lake fiables a grande échelle
Delta lake - des data lake fiables a grande échellefrançois de Buttet
 
Coyote & Dataiku - Séminaire Dixit GFII du 13 04-2015
Coyote & Dataiku - Séminaire Dixit GFII du 13 04-2015Coyote & Dataiku - Séminaire Dixit GFII du 13 04-2015
Coyote & Dataiku - Séminaire Dixit GFII du 13 04-2015Dataiku
 
Paper presentation of Performance Analysis of IoT-Based Sensor,Big Data Proce...
Paper presentation of Performance Analysis of IoT-Based Sensor,Big Data Proce...Paper presentation of Performance Analysis of IoT-Based Sensor,Big Data Proce...
Paper presentation of Performance Analysis of IoT-Based Sensor,Big Data Proce...Sylia Baraka
 
Datalake de l'idée à la plateforme
Datalake de l'idée à la plateformeDatalake de l'idée à la plateforme
Datalake de l'idée à la plateformeNovencia Groupe
 
Comment se préparer à la directive DSP2?
Comment se préparer à la directive DSP2?Comment se préparer à la directive DSP2?
Comment se préparer à la directive DSP2?DataStax
 
Nouvelles opportunités pour les données fortement interconnectées : La base d...
Nouvelles opportunités pour les données fortement interconnectées : La base d...Nouvelles opportunités pour les données fortement interconnectées : La base d...
Nouvelles opportunités pour les données fortement interconnectées : La base d...Cédric Fauvet
 
DataGalaxy et Denodo : le guichet unique de gouvernance et d’accès aux données !
DataGalaxy et Denodo : le guichet unique de gouvernance et d’accès aux données !DataGalaxy et Denodo : le guichet unique de gouvernance et d’accès aux données !
DataGalaxy et Denodo : le guichet unique de gouvernance et d’accès aux données !Denodo
 
Spark : 5 moyens simples et rapides pour exploiter vos Big Data avec Spark et...
Spark : 5 moyens simples et rapides pour exploiter vos Big Data avec Spark et...Spark : 5 moyens simples et rapides pour exploiter vos Big Data avec Spark et...
Spark : 5 moyens simples et rapides pour exploiter vos Big Data avec Spark et...Jean-Michel Franco
 

Tendances (20)

Datastax-fraud_detection_webinar
Datastax-fraud_detection_webinarDatastax-fraud_detection_webinar
Datastax-fraud_detection_webinar
 
Analytics & Machine Learning avec la Data Virtualization
Analytics & Machine Learning avec la Data VirtualizationAnalytics & Machine Learning avec la Data Virtualization
Analytics & Machine Learning avec la Data Virtualization
 
Neo4j et ses cas d'usages
Neo4j et ses cas d'usagesNeo4j et ses cas d'usages
Neo4j et ses cas d'usages
 
Réussissez vos projets d’analytique self-service avec une couche de services ...
Réussissez vos projets d’analytique self-service avec une couche de services ...Réussissez vos projets d’analytique self-service avec une couche de services ...
Réussissez vos projets d’analytique self-service avec une couche de services ...
 
IBM Data lake
IBM Data lakeIBM Data lake
IBM Data lake
 
CDAP, la boîte à outil pour concevoir vos applications Big Data
CDAP,  la boîte à outil pour concevoir vos applications Big DataCDAP,  la boîte à outil pour concevoir vos applications Big Data
CDAP, la boîte à outil pour concevoir vos applications Big Data
 
Comment M6 personnalise l’expérience utilisateur du service 6Play avec DataSt...
Comment M6 personnalise l’expérience utilisateur du service 6Play avec DataSt...Comment M6 personnalise l’expérience utilisateur du service 6Play avec DataSt...
Comment M6 personnalise l’expérience utilisateur du service 6Play avec DataSt...
 
Simplifiez vos architectures Cloud avec la Data Virtualization
Simplifiez vos architectures Cloud avec la Data VirtualizationSimplifiez vos architectures Cloud avec la Data Virtualization
Simplifiez vos architectures Cloud avec la Data Virtualization
 
Enterprise Data Hub - La Clé de la Transformation de la Gestion de Données d'...
Enterprise Data Hub - La Clé de la Transformation de la Gestion de Données d'...Enterprise Data Hub - La Clé de la Transformation de la Gestion de Données d'...
Enterprise Data Hub - La Clé de la Transformation de la Gestion de Données d'...
 
Session découverte de la Data Virtualization
Session découverte de la Data VirtualizationSession découverte de la Data Virtualization
Session découverte de la Data Virtualization
 
SQL Saturday Paris 2015 - Polybase
SQL Saturday Paris 2015 - PolybaseSQL Saturday Paris 2015 - Polybase
SQL Saturday Paris 2015 - Polybase
 
Delta lake - des data lake fiables a grande échelle
Delta lake - des data lake fiables a grande échelleDelta lake - des data lake fiables a grande échelle
Delta lake - des data lake fiables a grande échelle
 
Spark tools by Jonathan Winandy
Spark tools by Jonathan WinandySpark tools by Jonathan Winandy
Spark tools by Jonathan Winandy
 
Coyote & Dataiku - Séminaire Dixit GFII du 13 04-2015
Coyote & Dataiku - Séminaire Dixit GFII du 13 04-2015Coyote & Dataiku - Séminaire Dixit GFII du 13 04-2015
Coyote & Dataiku - Séminaire Dixit GFII du 13 04-2015
 
Paper presentation of Performance Analysis of IoT-Based Sensor,Big Data Proce...
Paper presentation of Performance Analysis of IoT-Based Sensor,Big Data Proce...Paper presentation of Performance Analysis of IoT-Based Sensor,Big Data Proce...
Paper presentation of Performance Analysis of IoT-Based Sensor,Big Data Proce...
 
Datalake de l'idée à la plateforme
Datalake de l'idée à la plateformeDatalake de l'idée à la plateforme
Datalake de l'idée à la plateforme
 
Comment se préparer à la directive DSP2?
Comment se préparer à la directive DSP2?Comment se préparer à la directive DSP2?
Comment se préparer à la directive DSP2?
 
Nouvelles opportunités pour les données fortement interconnectées : La base d...
Nouvelles opportunités pour les données fortement interconnectées : La base d...Nouvelles opportunités pour les données fortement interconnectées : La base d...
Nouvelles opportunités pour les données fortement interconnectées : La base d...
 
DataGalaxy et Denodo : le guichet unique de gouvernance et d’accès aux données !
DataGalaxy et Denodo : le guichet unique de gouvernance et d’accès aux données !DataGalaxy et Denodo : le guichet unique de gouvernance et d’accès aux données !
DataGalaxy et Denodo : le guichet unique de gouvernance et d’accès aux données !
 
Spark : 5 moyens simples et rapides pour exploiter vos Big Data avec Spark et...
Spark : 5 moyens simples et rapides pour exploiter vos Big Data avec Spark et...Spark : 5 moyens simples et rapides pour exploiter vos Big Data avec Spark et...
Spark : 5 moyens simples et rapides pour exploiter vos Big Data avec Spark et...
 

Similaire à Digital GraphTour Paris - Neo4j 4.0, les nouveautés

Livecast: Mettez à disposition de vos partenaires une base de données SQL Azure
Livecast: Mettez à disposition de vos partenaires une base de données SQL AzureLivecast: Mettez à disposition de vos partenaires une base de données SQL Azure
Livecast: Mettez à disposition de vos partenaires une base de données SQL AzureMicrosoft Technet France
 
Azure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaAzure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaMicrosoft
 
Une gestion efficace du changement de vos structures de données relationnelle...
Une gestion efficace du changement de vos structures de données relationnelle...Une gestion efficace du changement de vos structures de données relationnelle...
Une gestion efficace du changement de vos structures de données relationnelle...Olivier DASINI
 
Azure Camp 9 Décembre 2014 - slides Keynote
Azure Camp 9 Décembre 2014 - slides KeynoteAzure Camp 9 Décembre 2014 - slides Keynote
Azure Camp 9 Décembre 2014 - slides KeynoteMicrosoft
 
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...Modern Data Stack France
 
Social Network Analysis Utilizing Big Data Technology
Social Network Analysis Utilizing Big Data TechnologySocial Network Analysis Utilizing Big Data Technology
Social Network Analysis Utilizing Big Data TechnologyImad ALILAT
 
JSS2014 – Hive ou la convergence entre datawarehouse et Big Data
JSS2014 – Hive ou la convergence entre datawarehouse et Big DataJSS2014 – Hive ou la convergence entre datawarehouse et Big Data
JSS2014 – Hive ou la convergence entre datawarehouse et Big DataGUSS
 
360Eyes Business Objects metadonnées
360Eyes Business Objects metadonnées360Eyes Business Objects metadonnées
360Eyes Business Objects metadonnéesSebastien Goiffon
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQLBruno Bonnin
 
Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Silicon Comté
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQLBruno Bonnin
 
Livre blanc data-lakes converteo 2018
Livre blanc data-lakes converteo 2018Livre blanc data-lakes converteo 2018
Livre blanc data-lakes converteo 2018Converteo
 
BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)BlueData, Inc.
 
Track 2 - Atelier 1 - Big data analytics présenté avec Intel
Track 2 - Atelier 1 - Big data analytics présenté avec IntelTrack 2 - Atelier 1 - Big data analytics présenté avec Intel
Track 2 - Atelier 1 - Big data analytics présenté avec IntelAmazon Web Services
 
SAS Forum Soft Computing Théâtre
SAS Forum Soft Computing ThéâtreSAS Forum Soft Computing Théâtre
SAS Forum Soft Computing ThéâtreSoft Computing
 
Oxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewOxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewLudovic Piot
 
Oxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide
 

Similaire à Digital GraphTour Paris - Neo4j 4.0, les nouveautés (20)

Livecast: Mettez à disposition de vos partenaires une base de données SQL Azure
Livecast: Mettez à disposition de vos partenaires une base de données SQL AzureLivecast: Mettez à disposition de vos partenaires une base de données SQL Azure
Livecast: Mettez à disposition de vos partenaires une base de données SQL Azure
 
Azure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaAzure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmedia
 
Une gestion efficace du changement de vos structures de données relationnelle...
Une gestion efficace du changement de vos structures de données relationnelle...Une gestion efficace du changement de vos structures de données relationnelle...
Une gestion efficace du changement de vos structures de données relationnelle...
 
Azure Camp 9 Décembre 2014 - slides Keynote
Azure Camp 9 Décembre 2014 - slides KeynoteAzure Camp 9 Décembre 2014 - slides Keynote
Azure Camp 9 Décembre 2014 - slides Keynote
 
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...
 
Social Network Analysis Utilizing Big Data Technology
Social Network Analysis Utilizing Big Data TechnologySocial Network Analysis Utilizing Big Data Technology
Social Network Analysis Utilizing Big Data Technology
 
JSS2014 – Hive ou la convergence entre datawarehouse et Big Data
JSS2014 – Hive ou la convergence entre datawarehouse et Big DataJSS2014 – Hive ou la convergence entre datawarehouse et Big Data
JSS2014 – Hive ou la convergence entre datawarehouse et Big Data
 
360Eyes Business Objects metadonnées
360Eyes Business Objects metadonnées360Eyes Business Objects metadonnées
360Eyes Business Objects metadonnées
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQL
 
Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQL
 
Livre blanc data-lakes converteo 2018
Livre blanc data-lakes converteo 2018Livre blanc data-lakes converteo 2018
Livre blanc data-lakes converteo 2018
 
Perf university
Perf universityPerf university
Perf university
 
Infrastructure as code drupal
Infrastructure as code drupalInfrastructure as code drupal
Infrastructure as code drupal
 
BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)
 
Track 2 - Atelier 1 - Big data analytics présenté avec Intel
Track 2 - Atelier 1 - Big data analytics présenté avec IntelTrack 2 - Atelier 1 - Big data analytics présenté avec Intel
Track 2 - Atelier 1 - Big data analytics présenté avec Intel
 
SAS Forum Soft Computing Théâtre
SAS Forum Soft Computing ThéâtreSAS Forum Soft Computing Théâtre
SAS Forum Soft Computing Théâtre
 
DataStax Enterprise - Cas d'usage
DataStax Enterprise - Cas d'usageDataStax Enterprise - Cas d'usage
DataStax Enterprise - Cas d'usage
 
Oxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewOxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overview
 
Oxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic Search
 

Plus de Neo4j

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
QIAGEN: Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
QIAGEN: Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansQIAGEN: Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
QIAGEN: Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansNeo4j
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...Neo4j
 
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafos
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafosBBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafos
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafosNeo4j
 
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...Neo4j
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jNeo4j
 
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdf
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdfNeo4j_Exploring the Impact of Graph Technology on Financial Services.pdf
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdfNeo4j
 
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdf
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdfRabobank_Exploring the Impact of Graph Technology on Financial Services.pdf
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdfNeo4j
 
Webinar - IA generativa e grafi Neo4j: RAG time!
Webinar - IA generativa e grafi Neo4j: RAG time!Webinar - IA generativa e grafi Neo4j: RAG time!
Webinar - IA generativa e grafi Neo4j: RAG time!Neo4j
 
IA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeIA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeNeo4j
 
Neo4j: Data Engineering for RAG (retrieval augmented generation)
Neo4j: Data Engineering for RAG (retrieval augmented generation)Neo4j: Data Engineering for RAG (retrieval augmented generation)
Neo4j: Data Engineering for RAG (retrieval augmented generation)Neo4j
 
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdf
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdfNeo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdf
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdfNeo4j
 
Enabling GenAI Breakthroughs with Knowledge Graphs
Enabling GenAI Breakthroughs with Knowledge GraphsEnabling GenAI Breakthroughs with Knowledge Graphs
Enabling GenAI Breakthroughs with Knowledge GraphsNeo4j
 
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdf
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdfNeo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdf
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdfNeo4j
 
Neo4j Jesus Barrasa The Art of the Possible with Graph
Neo4j Jesus Barrasa The Art of the Possible with GraphNeo4j Jesus Barrasa The Art of the Possible with Graph
Neo4j Jesus Barrasa The Art of the Possible with GraphNeo4j
 
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...SWIFT: Maintaining Critical Standards in the Financial Services Industry with...
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...Neo4j
 

Plus de Neo4j (20)

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
QIAGEN: Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
QIAGEN: Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansQIAGEN: Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
QIAGEN: Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...
ISDEFE - GraphSummit Madrid - ARETA: Aviation Real-Time Emissions Token Accre...
 
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafos
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafosBBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafos
BBVA - GraphSummit Madrid - Caso de éxito en BBVA: Optimizando con grafos
 
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...
Graph Everywhere - Josep Taruella - Por qué Graph Data Science en tus modelos...
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
 
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdf
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdfNeo4j_Exploring the Impact of Graph Technology on Financial Services.pdf
Neo4j_Exploring the Impact of Graph Technology on Financial Services.pdf
 
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdf
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdfRabobank_Exploring the Impact of Graph Technology on Financial Services.pdf
Rabobank_Exploring the Impact of Graph Technology on Financial Services.pdf
 
Webinar - IA generativa e grafi Neo4j: RAG time!
Webinar - IA generativa e grafi Neo4j: RAG time!Webinar - IA generativa e grafi Neo4j: RAG time!
Webinar - IA generativa e grafi Neo4j: RAG time!
 
IA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeIA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG time
 
Neo4j: Data Engineering for RAG (retrieval augmented generation)
Neo4j: Data Engineering for RAG (retrieval augmented generation)Neo4j: Data Engineering for RAG (retrieval augmented generation)
Neo4j: Data Engineering for RAG (retrieval augmented generation)
 
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdf
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdfNeo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdf
Neo4j Graph Summit 2024 Workshop - EMEA - Breda_and_Munchen.pdf
 
Enabling GenAI Breakthroughs with Knowledge Graphs
Enabling GenAI Breakthroughs with Knowledge GraphsEnabling GenAI Breakthroughs with Knowledge Graphs
Enabling GenAI Breakthroughs with Knowledge Graphs
 
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdf
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdfNeo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdf
Neo4j_Anurag Tandon_Product Vision and Roadmap.Benelux.pptx.pdf
 
Neo4j Jesus Barrasa The Art of the Possible with Graph
Neo4j Jesus Barrasa The Art of the Possible with GraphNeo4j Jesus Barrasa The Art of the Possible with Graph
Neo4j Jesus Barrasa The Art of the Possible with Graph
 
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...SWIFT: Maintaining Critical Standards in the Financial Services Industry with...
SWIFT: Maintaining Critical Standards in the Financial Services Industry with...
 

Digital GraphTour Paris - Neo4j 4.0, les nouveautés

  • 1.
  • 2. 1960 1970 1980 1990 2000 2010 2020 2030 Hierarchical Relational (+ Object Relational and Object Mapping) Desktop Object NoSQL/NOSQL/NewSQL/Specialised Graph Databases Cloud Databases
  • 3. 1960 1970 1980 1990 2000 2010 2020 2030 BASES DE DONNEES RELATIONNELLES CLASSIQUES Stocker et récupérer des données 2-3 sauts dans une requête
  • 4. 1960 1970 1980 1990 2000 2010 2020 2030 2-3 sauts dans une requête TECHNOLOGIE BIG DATA Agréger et filtrer des données 1 saut dans une requête BASES DE DONNEES RELATIONNELLES CLASSIQUES Stocker et récupérer des données
  • 5. 1960 1970 1980 1990 2000 2010 2020 2030 2-3 sauts dans une requête 1 saut dans une requête Des millions de sauts BASES DE DONNEES RELATIONNELLES CLASSIQUES Stocker et récupérer des données TECHNOLOGIE BIG DATA Agréger et filtrer des données Connecter les données
  • 6. Connecter les données 2-3 hops in a query 1 hop in a query Des millions de sauts Stockage et extraction en temps réel Traitement parallèle par lots Graphe de connaissances temps réel “Our Neo4j solution is literally thousands of times faster than the prior MySQL solution, with queries that require 10-100 times less code” Volker Pacher, Senior Developer BASES DE DONNEES RELATIONNELLES CLASSIQUES Stocker et récupérer des données TECHNOLOGIE BIG DATA Agréger et filtrer des données
  • 7. Adjacence hors indexes A l’écriture Les données sont connectées au moment-même où elles sont stockées A la lecture Extraction ultra-rapide des données et des relations par saut de pointeurs
  • 8. Passage à l’échelle illimité IA et apprentissage Dévoiler le contexte Sécurité et confidentialité des données Horizontalement et verticalement Intégrer la science des données dans les systèmes opérationnels Utiliser la richesse des données pour révéler le contexte des données et les relations de cause à effet en temps réel Assurer la protection des données et le respect de la réglementation
  • 9. • Au sein d’une infrastructure partagée, les données et les transactions sont physiquement isolées • Plusieurs bases de données fonctionnent en parallèle sur un même cluster Neo4j (ou sur un même serveur autonome) • Gestion agile “cloud-friendly” : déplacement facile et rapide de bases de données d’un cluster à un autre
  • 10. Cas d’usage: • Multi-tenancy: Une même instance de Serveur Neo4j ou de Cluster Neo4j Cluster peut servir différents groupes d’utilisateurs/clients au sein d’une organisation. • Rapid Test/Développement/Déploiement: Les DBAs et développeurs peuvent créer plusieurs copies de la même base de données. • Scalabilité: Les données sont réparties dans des structures séparées physiquement. • Elasticité “Cloud-Friendly” : Les bases de données peuvent être associées à un stockage de type cloud et être facilement détachées d’un serveur pour être rattachées à un autre. La base de données system : Référentiel interne contenant les informations système, disponible pour toutes les bases de données (“single” ou cluster) Commandes d’administration: • CREATE|DROP|START|STOP DATABASE name User commands: • HTTP API: http://server:port/.../database • Browser & Cypher Shell: :USE database • Drivers: Session(database) • Browser:
  • 11. La fondation : Le Cluster Causal L’évolution : Fabric
  • 12. Base de données ACID en mode cluster basé sur le protocole RAFT: - Des transactions de graphe avec Cohérence ACID - Garantit l’intégrité au fil du temps Replica Servers Query, View Core Servers Synced Cluster
  • 13. Vous Modélisation et stockage des graphes dans des bases de données Neo4j dédiées, selon vos besoins métier Neo4j Distribution et parallélisation des requêtes sur ces différentes bases de données Neo4j lorsque vous devez regrouper des résultats
  • 14. Passage à l’échelle illimité pour Neo4j en ajoutant la scalabilité horizontale à la puissance du modèle existant de scalabilité verticale. SHARDING: exploiter un seul graphe étendu FEDERATION: interroger des graphes disjoints
  • 15. • Exécution en parallèle de requêtes sur plusieurs bases de données graphes, en combinant ou en agrégeant les résultats. • Chaînage des requêtes provenant de différentes bases de données graphe pour produire des analyses temps réel avancées. SQL MATCH (boss)-[:MANAGES*0..3]->(sub), (sub)-[:MANAGES*1..3]->(report) WHERE boss.name = “John Doe” RETURN sub.name AS Subordinate, count(report) AS Total Cypher en Neo4j 3.5 UNWIND corporate.graphIds() AS gid CALL { USE corporate.graph( gid ) MATCH (boss)-[:MANAGES*0..3]->(sub), (sub)-[:MANAGES*1..3]->(report) RETURN boss.name AS Boss, sub.name AS Subordinate, count(report) AS Total } RETURN Boss, Subordinate, Total ORDER BY Total Cypher en Neo4j 4.0
  • 16. http://ldbcouncil.org/developer/snb and https://neo4j.com/fosdem20 Distribution du benchmark “LDBC Social Network” • 1-shard pour le graphe Persons • N-shards pour le graphe Forums
  • 17. http://ldbcouncil.org/developer/snb and https://neo4j.com/fosdem20 Distribution du benchmark “LDBC Social Network” Latence réduite jusqu’à 300x Amélioration de performances jusqu’à 10x Premiers résultats !
  • 18. BobJoe • Conçue pour de nouveaux cas d’usage - PII, credit card, patient information, etc. • Basée sur le Contrôle d’accès en fonction des rôles (RBAC) pour les graphes • Restrictions sur les données pouvant être accédées par différents utilisateurs, appliquées à toutes les interactions avec la base de données • Vue sécurité implicite sur les données pour chaque utilisateur via des définitions de sécurité basées sur le schéma • Des permissions Grant/Deny pour les opérations sur les données TRAVERSE, READ ou WRITE, basées sur les labels, les types de relations ou la base de données et sur les noms des propriétés • Les règles de sécurité sont dupliquées sur l’ensemble du cluster grâce aux rôles associés aux utilisateurs Baseline_Personnel _Security_Standard Security_Check Counter_Terrorism _Check Developed_Vetting
  • 19.
  • 20. • L’agent du centre d’appel a besoin du nom du médecin mais ne doit pas avoir accès au diagnostic • Le médecin doit pouvoir consulter les dossiers des patients et les diagnostics
  • 21. // Doctors get wide-ranging access GRANT ACCESS ON DATABASE healthcare TO doctor; GRANT TRAVERSE ON GRAPH healthcare TO doctor; GRANT READ {*} ON GRAPH healthcare TO doctor; GRANT WRITE ON GRAPH healthcare TO doctor; // Agents get narrower access GRANT ACCESS ON DATABASE healthcare TO agent; GRANT TRAVERSE {*} ON GRAPH healthcare TO agent; GRANT READ {Name} ON GRAPH healthcare NODES Doctor TO agent; GRANT READ {Name} ON GRAPH healthcare NODES Patient TO agent; MATCH (:CallcenterAgent {name: 'Alice'}) <-[:CALLED]-(p:Patient)-[:HAS_DIAGNOSIS]-(dia) <-[:ESTABLISHED]-(d:Doctor) RETURN p.name, d.name, dia.name;
  • 22.
  • 23. • Contrôle des flux dans toute la chaîne, permettant à l’application cliente de contrôler entièrement la production et le flux des enregistrements dans un résultat • Exécution Synchrone/Asynchrone • Basée sur les “reactive streams” avec une librairie backpressure non-bloquante • Les applications clientes peuvent extraire ou rejeter tout le résultat ou N éléments • • Exposée via une API reactive dans les Drivers Neo4j v4.0 • Cas d’Usage : • Requêtes longues / résultats volumineux • Résultats paginés • Clients légers
  • 24. String query = "MATCH (a:Person) RETURN a.name"; try (Session session = driver.session()) { StatementResult result = session.run(query); while (result.hasNext()) { Record record = result.next(); String name = record.get(0).asString(); if (name.equals("Emil Eifrem")) { break; // Looks ok, but whoops! } System.out.println(name); } } String query = "MATCH (a:Person) RETURN a.name"; return Flux.using(driver::rxSession, session -> { RxStatementResult result = session.run(query); return Flux.from(result.records()) .limitRate(10) .map(record -> record.get(0).asString()) .takeUntil(name -> name.equals("Emil Eifrem")) .doOnNext(System.out::println) .then( /* discard example records */ ); }, RxSession::close);
  • 25. Basée sur une fondation Neo4j native et robuste, Neo4j 4.0 apporte: La scalabilité illimitée avec le sharding & la fédération Une architecture 100% reactive adaptée aux applications modernes Des contrôles de sécurité granulaires pour la sécurité et la vie privée Une souplesse de déploiement avec le multi-base de données
  • 27. 27 Neo4j Desktop D’une simple idée de graphe à Neo4j en production
  • 28. 28 Neo4j Desktop Les outils indispensables - Neo4j Browser pour éditer les requêtes Cypher - Neo4j Bloom, l’interface intuitive d’exploration de graphes - Les outils des Neo4j Labs : Neo4j ETL, Halin, Query Log Analyzer, NEuler - Et bien d’autres applications fantastiques de Kineviz, yWorks, et autres !
  • 29. 29 Neo4j Desktop Connexion aux bases de données Neo4j, où qu’elles soient - instances uniques locales de développement et d’expérimentation - déploiements sur site dans des environnements de test et d’intégration - déploiements en production dans le cloud avec Neo4j Aura
  • 30. 30 Neo4j Desktop Facilite le travail des développeurs en 2020 - intégration avec le système de fichiers local - outils CLI tooling pour s’intégrer avec vos plates-formes de build - modèles de projets pour développer des applications - prototypage facile d’applications avec interface utilisateur - développement GraphQL de qualité - excellente intégration avec Aura
  • 31. Flexible Fiable Orienté développeur ● Zéro Maintenance ● Scalabilité à la demande ● Tarification simple, basée sur le capacitaire ● 100% haute dispo, redémarrage automatique, configuration en mode cluster ● Intégrité & Durabilité des données ● Sécurité et cryptage de bout en bout ● Performance graphe native ● Le langage d’interrogation de graphes le + populaire au monde ● Vaste couverture des langages - drivers pour Java, .NET, JavaScript, Python, Go, Spring, etc.
  • 33. Neo4j Bloom Sur étagère avec Neo4j Exclusivement sur les bases graphes Neo4j Centré sur des besoins ad-hoc d’exploration de graphes Paradigme d’exploration “Search first” Pour les data analysts, data scientists et les développeurs Boîtes à outils de visualisation Editeurs tiers e.g. Ogma, Keylines, vis.js, d3.js, sigma.js, yFiles Besoin de développement d’applications custom ou d’intégration de visualisations Parfois supportées par des fournisseurs Développements spécifiques parfois nécessaires Offrent des APIs robustes pour un contrôle souple de l’expérience utilisateur Pour les développeurs d’applications Outils de BI Supportés par des éditeurs tiers e.g. Tableau, Power BI, Qlik Création de rapports et tableaux de bord associant diverses sources de données et de nombreux types de visualisation Non optimisés pour les données de graphe - requièrent un connecteur Neo4j spécifique Pour les data analysts et utilisateurs métier Apps de visualisation de graphes Supportés par des éditeurs tiers e.g. Linkurious, Kineviz, Graphileon Purpose-built applications for specific domains and graph visualization needs Supporte plusieurs modèles graphe & sources de données Capacité de personnalisation et d’intégration Pour les data analysts, data scientists et utilisateurs métier Peu d’expertise technique Forte implication technique + #utilisateurs +++ #utilisateurs Apprentissage autonome Gros effort d’encadrement
  • 35. Perspective Recherche Visualisation Exploration Inspection Edition Explorer visuellement les Graphes Prototyper + rapidement Collaboration entre équipes
  • 36. Recherche avec auto-complétion / suggestions automatiques Couleurs, tailles et icônes ajustables Visualisation, Exploration et Découverte Panorame, Zoom et Sélection Navigateur et éditeur de propriétés
  • 37. Couleurs et tailles flexibles Style utilisant les propriétés Développement du graphe par type de relation ou par type de voisin Recherche insensible à la casse Spécification des types de paramètres Export de données CSV
  • 38.
  • 39. Recettes & Analytics orientées graphe ML & IA augmentés par les graphes Graph Data Science La GDS est une approche scientifique pour acquérir des connaissances sur les relations et les structures des données, généralement pour alimenter des prévisions Elle utilise des méthodes pluridisciplinaires incluant les requêtes, les statistiques, les algorithmes et l'apprentissage automatique. ` Répondre à des questions spécifiques afin de mieux comprendre les connections entre données actuelles et historiques Les approches incluent généralement des requêtes et des algorithmes globaux et l'utilisation directe des résultats Modèles d’entraînement (ML) fondés sur des données “graphes” Utilisés pour simuler des décisions humaines et probabilistes au sein d’une solution/application (Système IA)
  • 40. Optimisée pour les Analytics Exploitez des structures de données personnalisées optimisées pour les traversées et l’agrégation globales Partitionnez et refactorez votre graphe pour des cas d’utilisation spécifiques Des Algorithmes pour créer de la connaissance Algorithmes robustes fortement parallélisés et applicables à plusieurs milliards de noeuds Accès rapide à des dizaines de tutoriels / expérimentations Interface intuitive API drastiquement simplifiée et standardisée permettant des configurations personnalisées Documentation, formation, et exemples disponibles => montée en compétences facile La librairie Graph Algos devient la Produit Supporté, en Développement Dynamique & Continu Graph Data Science Library
  • 41. Parallel BFS Parallel DFS Shortest Path Single Source Shortest path All Pairs Shortest Path Minimum Spanning Tree A* Shortest Path Yen’s K-Shortest Path Minimum Spanning Tree Random Walk Degree Centrality Closeness Centrality (inc. harmonic, Dangalchev, Wasserman & Faust) Betweenness Centrality Approx. Betweenness Centrality Page Rank Personalized Page Rank ArticleRank Eigenvector Centrality Triangle Count Clustering Coefficients Connected Components (aka Union Find) Strongly Connected Components Label Propagation Louvain Modularity Balanced Triad Adamic Adar Common Neighbours Preferential Attachment Resource Allocations Same Community Total Neighbours Euclidean Distance Cosine Similarity Jaccard Similarity Overlap Similarity Pearson Similarity Approximate KNN Pathfinding & Search Centrality / Importance Community Detection Link Prediction Similarity
  • 42. Projections analytiques: - Structure de données spécialisée pour les algorithmes, supporte des milliards de noeuds - Loaders Cypher pour l’expérimentation - Remodeler, combiner, agréger et dédupliquer rapidement vos données transactionnelles - Prise en charge des noeuds multi-labels, des types de relations et des propriétés - Gestion parallèle en mémoire d’algorithmes de graphes simultanés - Réduction drastique de l’empreinte mémoire Algorithmes de graphes & outils : - >40 algorithmes dans 5 catégories: détection de communauté, centralité, similarité, parcours et prédiction de lien - Algorithmes complémentaires (génération de graphes, encodage à chaud, random walk) - Aperçu de nouvelles implémentations (namespaces alpha & beta) - Les algorithmes scalables supportés comprennent le seeding, le déterminisme et les calculs incrémentiels - Mode d’estimation des besoins en mémoire
  • 43.
  • 44. • Graph Data Science Library • Bloom 1.2 • rule-based styling • https://neo4j.com/sandbox
  • 45. Déjà disponibles : • Java, .NET, JavaScript, Spring Data Neo4j Drivers ✅ • Neo4j Desktop ✅ • Neo4j Browser ✅ Travaux en cours : • Python (T2) & Go (T4) - Coming! • Graph Data Science Library (T2) - Coming! • Bloom T2 - Coming! • Aura (T2) - Coming!