SlideShare ist ein Scribd-Unternehmen logo
1 von 35
Graph Databases for SQL Server 
Professionals 
Stéphane Fréchette
Who am I? 
My name is Stéphane Fréchette 
SQL Server MVP | Consultant | Speaker | Database & BI Architect | NoSQL. 
Drums, good food and fine wine. Founder @ukubu, @GatineauOuverte, 
@TEDxGatineau 
I have a passion for architecting, designing and building solutions that 
matter. 
Twitter: @sfrechette 
Blog: stephanefrechette.com 
Email: stephanefrechette@ukubu.com 
2 | 11/25/2014 | SQLSaturday Winnipeg #350
Thanks to Our Sponsors! 
Gold 
Silver 
Bronze
Session Outline 
 What is a Graph? 
 What is Neo4j? 
 Data Modeling – The Property Graph 
 Cypher Query Language 
 Importing Data… 
 Use Cases 
 Demos 
 Resources 
4 | 11/25/2014 | SQLSaturday Winnipeg #350
What is a Graph? 
5 | 11/25/2014 | SQLSaturday Winnipeg #350
Are these Graphs? 
6 | 11/25/2014 | SQLSaturday Winnipeg #350
This is a Graph 
Node 
Relationship 
A Property Graph 
7 | 11/25/2014 | SQLSaturday Winnipeg #350
Organization Project Graph 
8 | 11/25/2014 | SQLSaturday Winnipeg #350
Twitter Social Graph 
9 | 11/25/2014 | SQLSaturday Winnipeg #350
What is Neo4j? 
An open-source graph database by Neo 
Technology. Neo4j stores data in nodes 
connected by directed, typed 
relationships with properties on both, 
also know as a Property Graph 
 Fully ACID compliant 
 Massively scalable, up to several billion 
nodes/relationships/properties 
 Highly-available, when distributed across 
multiple machines 
 Accessible by a convenient REST 
interface or an object-oriented Java API 
11/10 | 25/2014 | SQLSaturday Winnipeg #350
Data Modeling 
From SQL Server to Graph 
Property Graph 
11 | 11/25/2014 | SQLSaturday Winnipeg #350
Example: Meetup Data In SQL Server 
Member MeetupOrganizer MeetupMember Meetup 
ID Member 
1 Daniel 
2 Stephane 
3 John 
4 Randy 
ID Name 
1 Ottawa SQL Server User 
Group 
2 Ottawa JavaScript 
3 Ottawa Visio User Group 
4 Ottawa Tableau User Group 
5 Dirty Dancing Ottawa 
MemberID MeetupID 
2 1 
1 2 
3 3 
2 4 
3 5 
MemberID MeetupID 
3 1 
3 2 
4 2 
4 4 
1 5 
12 | 11/25/2014 | SQLSaturday Winnipeg #350
Example: Meetup Data In a Graph Member Meetup 
name: ‘Stephane’ 
name: ‘Ottawa Tableau User Group’ 
name: ‘Ottawa SQL Server User 
Group’ 
name: ‘John’ 
name: ‘Ottawa JavaScript’ 
name: ‘Ottawa Visio User Group’ 
name: ‘Dirty Dancing Ottawa’ 
name: ‘Randy’ 
name: ‘Daniel’ 
13 | 11/25/2014 | SQLSaturday Winnipeg #350
Cypher Query Language 
Cypher is a declarative graph query language that allows 
for expressive and efficient querying and updating of the 
graph store 
 Pattern-matching 
 Declarative: what to retrieve, not how to retrieve it 
 Inspired from other known Language (SQL, SPARQL, Haskell, Python) 
 Aggregation, Ordering, Limit 
 Update the Graph 
14 | 11/25/2014 | SQLSaturday Winnipeg #350
Cypher and T-SQL 
Cypher also has a number of keywords that have a direct 
equivalence with SQL which makes it a curiously familiar 
language 
 WHERE 
 ORDER BY 
 LIMIT 
 SUM, COUNT, STDEVP, MIN, MAX etc… 
 LTRIM, UPPER, LOWER, REPLACE, LEFT, RIGHT, SUBSTRING 
 DISTINCT 
 CASE (SQL Server Pros) – [:WILL_LOVE] -> (Cypher) 
15 | 11/25/2014 | SQLSaturday Winnipeg #350
Cypher - Meetup 
16 | 11/25/2014 | SQLSaturday Winnipeg #350
Neo4j Browser 
11/17 | 25/2014 | SQLSaturday Winnipeg #350
Demo 
(let’s query some data…) 
18 | 11/25/2014 | SQLSaturday Winnipeg #350
Importing Data… 
19 | 11/25/2014 | SQLSaturday Winnipeg #350
Importing Data… 
Some important considerations… 
Different import scenarios 
 Dataset size: 1000s, 100000s, 10000000s 
 Dataset format (source): Database, File (CSV, Spreadsheet, GraphML, Geoff), 
Service, Other 
 Import type: Initial Bulk Load, Incremental Load, Initial Bulk Load + Incremental Load 
Different import tools 
 Spreadsheet based 
 Neo4j-shell based: (Cypher, neo4j-shell-tools, Cypher LOAD CSV) 
 Command-line based: Batch Importer 
 Neo4j Brower based 
 ETL Tools: (Talend, Mulesoft, Pentaho Kettle) 
 Custom software: (Java API, REST API, Spring Data Neo4j) 
20 | 11/25/2014 | SQLSaturday Winnipeg #350
Many different mappings 
Import 
Scenarios 
Import 
Tools 
Not always clear what you should be using 
Depends on your skillsets, dataset size… (lots of other stuff) 
Choose wisely! 
21 | 11/25/2014 | SQLSaturday Winnipeg #350
Demo 
(walkthrough on importing data…) 
22 | 11/25/2014 | SQLSaturday Winnipeg #350
The Sample Dataset 
23 | 11/25/2014 | SQLSaturday Winnipeg #350
Importing using Spreadsheets 
Very small size datasets < 1000, easy to use 
Format data in 
spreadsheet 
Generate Cypher 
statements with 
formulas 
Copy and Execute 
Cypher in Neo4j 
browser 
24 | 11/25/2014 | SQLSaturday Winnipeg #350
Importing using Spreadsheets 
25 | 11/25/2014 | SQLSaturday Winnipeg #350
Importing using neo4j-shell-tools 
Small to medium size datasets 
https://github.com/jexp/neo4j-shell-tools 
Format data in CSV 
files 
Create import-cypher 
commands 
for 
neo4j-shell-tools 
Execute commands 
from neo4j-shell 
26 | 11/25/2014 | SQLSaturday Winnipeg #350
Importing using neo4j-shell-tools 
27 | 11/25/2014 | SQLSaturday Winnipeg #350
Importing using LOAD CSV 
Native Cypher 
Format data in 
CSV files 
Create 
“LOAD CSV” 
commands 
Execute 
command from 
neo4j-shell or 
browser 
Additional 
“cleanup” for 
Labels and 
RelTypes 
28 | 11/25/2014 | SQLSaturday Winnipeg #350
Importing using LOAD CSV 
29 | 11/25/2014 | SQLSaturday Winnipeg #350
Importing using Batch Importer 
Non-transactional import, suited for very very large datasets 
Format data in 
TSV files 
Execute Batch 
Import 
command 
Copy store 
files to Neo4j 
Server 
directory 
Start Neo4j 
Server with 
generated store 
files 
30 | 11/25/2014 | SQLSaturday Winnipeg #350
Use Cases 
Principal uses of Graph Database include: 
 Network and Data Center Management 
(Queries: Impact Analysis, Root Cause Analysis, Quality-of-Service Mapping, Asset Management) 
 Authorization and Access 
(Queries : Access Management, Interconnected Group Organization, Provenance) 
 Social 
(Queries : Friend Recommendations, Sharing & Collaboration, Influencer Analysis) 
 Geo 
(Queries : Routing, Logistics, Capacity Planning) 
 Recommendations 
(Queries : Product, Social, Service, and Professional Recommendations) 
 Fraud Detection 
http://www.neotechnology.com/neo4j-use-cases/ 
31 | 11/25/2014 | SQLSaturday Winnipeg #350
Summary 
(graphs)-[:ARE]->(everywhere) 
32 | 11/25/2014 | SQLSaturday Winnipeg #350
Resources 
 Neo Technology http://www.neotechnology.com/ 
 Neoj.org (Learn, Develop, Downloads,…) 
http://www.neo4j.org/ 
 Neo4j on Vimeo http://vimeo.com/neo4j 
 Neo4j on SlideShare http://www.slideshare.net/neo4j 
 Neo4j on Github https://github.com/neo4j 
 Neo4j Cypher Cheat Sheet http://docs.neo4j.org/refcard/2.1/ 
 Neo4j Graph Database as a Service 
http://www.graphenedb.com/ 
 Linkurious – The easiest way to explore graph databases 
http://linkurio.us/ 
 KeyLines- Visualize dynamic networks http://keylines.com/ 
 Experiments with NEO4J: Using a graph database as a SQL 
Server metadata hub http://bit.ly/V2PrxN 
 Kenny Bastani http://www.kennybastani.com/ 
 Rik Van Bruggen http://blog.bruggen.com/ 
 Max de Marzi http://maxdemarzi.com/ 
 Better Software Development http://jexp.de/blog/ 
 Graph Databases (Free Book) http://graphdatabases.com/ 
 Neo4j GraphGist http://gist.neo4j.org/ 
 GraphConnect Conference http://graphconnect.com/ 
 Titan – Distributed Graph Database 
https://thinkaurelius.github.io/titan/ 
 InfiniteGraph http://www.infinitegraph.com/ 
 OrientDB http://www.orientechnologies.com/ 
 Cayley by Google https://github.com/google/cayley 
33 | 11/25/2014 | SQLSaturday Winnipeg #350
What Questions Do You 
Have? 
34 | 11/25/2014 | SQLSaturday Winnipeg #350
Thank You 
For attending this session 
35 | 11/25/2014 | SQLSaturday Winnipeg #350

Weitere ähnliche Inhalte

Was ist angesagt?

How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)
How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)
How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)Robert Metzger
 
How does SharePoint access data
How does SharePoint access dataHow does SharePoint access data
How does SharePoint access dataAlan Eardley
 
BizTalk Server 2016 Feature Pack 1
BizTalk Server 2016 Feature Pack 1BizTalk Server 2016 Feature Pack 1
BizTalk Server 2016 Feature Pack 1BizTalk360
 
Digital Publishing Made Easy with the OSCI Toolkit
 Digital Publishing Made Easy with the OSCI Toolkit Digital Publishing Made Easy with the OSCI Toolkit
Digital Publishing Made Easy with the OSCI ToolkitKyle Jaebker
 
Cloud First: Be Prepared
Cloud First: Be PreparedCloud First: Be Prepared
Cloud First: Be PreparedAlan Eardley
 
SharePoint Upgrade or Migration, or is it both? - SPS London 2016
SharePoint Upgrade or Migration, or is it both? - SPS London 2016SharePoint Upgrade or Migration, or is it both? - SPS London 2016
SharePoint Upgrade or Migration, or is it both? - SPS London 2016Chirag Patel
 
Design for scale
Design for scaleDesign for scale
Design for scaleDoug Lampe
 
Ensuring Successful Office 365 Tenant to Tenant Migration Collab365 Global Co...
Ensuring Successful Office 365 Tenant to Tenant Migration Collab365 Global Co...Ensuring Successful Office 365 Tenant to Tenant Migration Collab365 Global Co...
Ensuring Successful Office 365 Tenant to Tenant Migration Collab365 Global Co...Chirag Patel
 
Swiss pass chapter deck - zurich - april 2011
Swiss pass chapter deck - zurich - april 2011Swiss pass chapter deck - zurich - april 2011
Swiss pass chapter deck - zurich - april 2011Charley Hanania
 
Workflows in SharePoint 2013
Workflows in SharePoint 2013Workflows in SharePoint 2013
Workflows in SharePoint 2013Portiva
 
Data Pipelines: Big Data Meets Salesforce
Data Pipelines: Big Data Meets SalesforceData Pipelines: Big Data Meets Salesforce
Data Pipelines: Big Data Meets SalesforceSalesforce Developers
 
Aprendamos DAX - José Ahias López Portillo
Aprendamos DAX - José Ahias López PortilloAprendamos DAX - José Ahias López Portillo
Aprendamos DAX - José Ahias López PortilloSpanishPASSVC
 
Apache Flink First Half of 2015 Community Update
Apache Flink First Half of 2015 Community UpdateApache Flink First Half of 2015 Community Update
Apache Flink First Half of 2015 Community UpdateRobert Metzger
 
SharePoint Saturday STL: SharePoint Powershell Admins
SharePoint Saturday STL: SharePoint Powershell AdminsSharePoint Saturday STL: SharePoint Powershell Admins
SharePoint Saturday STL: SharePoint Powershell AdminsKenneth Maglio
 
Icinga Camp Bangalore - Welcome
Icinga Camp Bangalore - WelcomeIcinga Camp Bangalore - Welcome
Icinga Camp Bangalore - WelcomeIcinga
 
What's new in SharePoint Online - London SharePoint User Group March 2018
What's new in SharePoint Online - London SharePoint User Group March 2018What's new in SharePoint Online - London SharePoint User Group March 2018
What's new in SharePoint Online - London SharePoint User Group March 2018Chirag Patel
 

Was ist angesagt? (19)

How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)
How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)
How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)
 
How does SharePoint access data
How does SharePoint access dataHow does SharePoint access data
How does SharePoint access data
 
BizTalk Server 2016 Feature Pack 1
BizTalk Server 2016 Feature Pack 1BizTalk Server 2016 Feature Pack 1
BizTalk Server 2016 Feature Pack 1
 
Digital Publishing Made Easy with the OSCI Toolkit
 Digital Publishing Made Easy with the OSCI Toolkit Digital Publishing Made Easy with the OSCI Toolkit
Digital Publishing Made Easy with the OSCI Toolkit
 
PnP Monthly Community Call - April 2018
PnP Monthly Community Call - April 2018PnP Monthly Community Call - April 2018
PnP Monthly Community Call - April 2018
 
Cloud First: Be Prepared
Cloud First: Be PreparedCloud First: Be Prepared
Cloud First: Be Prepared
 
Chapter deck january 2015
Chapter deck january 2015Chapter deck january 2015
Chapter deck january 2015
 
SharePoint Upgrade or Migration, or is it both? - SPS London 2016
SharePoint Upgrade or Migration, or is it both? - SPS London 2016SharePoint Upgrade or Migration, or is it both? - SPS London 2016
SharePoint Upgrade or Migration, or is it both? - SPS London 2016
 
Design for scale
Design for scaleDesign for scale
Design for scale
 
Ensuring Successful Office 365 Tenant to Tenant Migration Collab365 Global Co...
Ensuring Successful Office 365 Tenant to Tenant Migration Collab365 Global Co...Ensuring Successful Office 365 Tenant to Tenant Migration Collab365 Global Co...
Ensuring Successful Office 365 Tenant to Tenant Migration Collab365 Global Co...
 
Swiss pass chapter deck - zurich - april 2011
Swiss pass chapter deck - zurich - april 2011Swiss pass chapter deck - zurich - april 2011
Swiss pass chapter deck - zurich - april 2011
 
Workflows in SharePoint 2013
Workflows in SharePoint 2013Workflows in SharePoint 2013
Workflows in SharePoint 2013
 
Alexs showcase
Alexs showcaseAlexs showcase
Alexs showcase
 
Data Pipelines: Big Data Meets Salesforce
Data Pipelines: Big Data Meets SalesforceData Pipelines: Big Data Meets Salesforce
Data Pipelines: Big Data Meets Salesforce
 
Aprendamos DAX - José Ahias López Portillo
Aprendamos DAX - José Ahias López PortilloAprendamos DAX - José Ahias López Portillo
Aprendamos DAX - José Ahias López Portillo
 
Apache Flink First Half of 2015 Community Update
Apache Flink First Half of 2015 Community UpdateApache Flink First Half of 2015 Community Update
Apache Flink First Half of 2015 Community Update
 
SharePoint Saturday STL: SharePoint Powershell Admins
SharePoint Saturday STL: SharePoint Powershell AdminsSharePoint Saturday STL: SharePoint Powershell Admins
SharePoint Saturday STL: SharePoint Powershell Admins
 
Icinga Camp Bangalore - Welcome
Icinga Camp Bangalore - WelcomeIcinga Camp Bangalore - Welcome
Icinga Camp Bangalore - Welcome
 
What's new in SharePoint Online - London SharePoint User Group March 2018
What's new in SharePoint Online - London SharePoint User Group March 2018What's new in SharePoint Online - London SharePoint User Group March 2018
What's new in SharePoint Online - London SharePoint User Group March 2018
 

Andere mochten auch

NoSQL Now! Introduction to Graph Databases
NoSQL Now! Introduction to Graph DatabasesNoSQL Now! Introduction to Graph Databases
NoSQL Now! Introduction to Graph Databasesakollegger
 
20150624 Belgian GraphDB meetup at Ordina
20150624 Belgian GraphDB meetup at Ordina20150624 Belgian GraphDB meetup at Ordina
20150624 Belgian GraphDB meetup at OrdinaRik Van Bruggen
 
A case-for-graph-db
A case-for-graph-dbA case-for-graph-db
A case-for-graph-dbDhaval Dalal
 
La bi, l'informatique décisionnelle et les graphes
La bi, l'informatique décisionnelle et les graphesLa bi, l'informatique décisionnelle et les graphes
La bi, l'informatique décisionnelle et les graphesCédric Fauvet
 
Introduction à Neo4j - La base de données de graphes - 2016
Introduction à Neo4j - La base de données de graphes - 2016Introduction à Neo4j - La base de données de graphes - 2016
Introduction à Neo4j - La base de données de graphes - 2016Cédric Fauvet
 
Intro to Neo4j - Nicole White
Intro to Neo4j - Nicole WhiteIntro to Neo4j - Nicole White
Intro to Neo4j - Nicole WhiteNeo4j
 
Neo4J : Introduction to Graph Database
Neo4J : Introduction to Graph DatabaseNeo4J : Introduction to Graph Database
Neo4J : Introduction to Graph DatabaseMindfire Solutions
 
Neo4j -- or why graph dbs kick ass
Neo4j -- or why graph dbs kick assNeo4j -- or why graph dbs kick ass
Neo4j -- or why graph dbs kick assEmil Eifrem
 
Intro to Cypher
Intro to CypherIntro to Cypher
Intro to Cypherjexp
 
Intro to Neo4j or why insurances should love graphs
Intro to Neo4j or why insurances should love graphsIntro to Neo4j or why insurances should love graphs
Intro to Neo4j or why insurances should love graphsPeter Neubauer
 
Neo4j - Cas d'usages pour votre métier
Neo4j - Cas d'usages pour votre métierNeo4j - Cas d'usages pour votre métier
Neo4j - Cas d'usages pour votre métierNeo4j
 
Immersion Musicale avec Neo4j
Immersion Musicale avec Neo4jImmersion Musicale avec Neo4j
Immersion Musicale avec Neo4jNeo4j
 
OrientDB vs Neo4j - and an introduction to NoSQL databases
OrientDB vs Neo4j - and an introduction to NoSQL databasesOrientDB vs Neo4j - and an introduction to NoSQL databases
OrientDB vs Neo4j - and an introduction to NoSQL databasesCurtis Mosters
 
RDBMS to Graphs
RDBMS to GraphsRDBMS to Graphs
RDBMS to GraphsNeo4j
 
The Graph Traversal Programming Pattern
The Graph Traversal Programming PatternThe Graph Traversal Programming Pattern
The Graph Traversal Programming PatternMarko Rodriguez
 
Recommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation EngineRecommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation EngineChristophe Willemsen
 
Intro to Neo4j presentation
Intro to Neo4j presentationIntro to Neo4j presentation
Intro to Neo4j presentationjexp
 
Introduction to Graph databases and Neo4j (by Stefan Armbruster)
Introduction to Graph databases and Neo4j (by Stefan Armbruster)Introduction to Graph databases and Neo4j (by Stefan Armbruster)
Introduction to Graph databases and Neo4j (by Stefan Armbruster)barcelonajug
 
Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH)
Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH) Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH)
Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH) David Fombella Pombal
 

Andere mochten auch (20)

NoSQL Now! Introduction to Graph Databases
NoSQL Now! Introduction to Graph DatabasesNoSQL Now! Introduction to Graph Databases
NoSQL Now! Introduction to Graph Databases
 
20150624 Belgian GraphDB meetup at Ordina
20150624 Belgian GraphDB meetup at Ordina20150624 Belgian GraphDB meetup at Ordina
20150624 Belgian GraphDB meetup at Ordina
 
A case-for-graph-db
A case-for-graph-dbA case-for-graph-db
A case-for-graph-db
 
La bi, l'informatique décisionnelle et les graphes
La bi, l'informatique décisionnelle et les graphesLa bi, l'informatique décisionnelle et les graphes
La bi, l'informatique décisionnelle et les graphes
 
Introduction à Neo4j - La base de données de graphes - 2016
Introduction à Neo4j - La base de données de graphes - 2016Introduction à Neo4j - La base de données de graphes - 2016
Introduction à Neo4j - La base de données de graphes - 2016
 
Intro to Neo4j - Nicole White
Intro to Neo4j - Nicole WhiteIntro to Neo4j - Nicole White
Intro to Neo4j - Nicole White
 
Neo4J : Introduction to Graph Database
Neo4J : Introduction to Graph DatabaseNeo4J : Introduction to Graph Database
Neo4J : Introduction to Graph Database
 
Neo4j -- or why graph dbs kick ass
Neo4j -- or why graph dbs kick assNeo4j -- or why graph dbs kick ass
Neo4j -- or why graph dbs kick ass
 
Neo4j
Neo4jNeo4j
Neo4j
 
Intro to Cypher
Intro to CypherIntro to Cypher
Intro to Cypher
 
Intro to Neo4j or why insurances should love graphs
Intro to Neo4j or why insurances should love graphsIntro to Neo4j or why insurances should love graphs
Intro to Neo4j or why insurances should love graphs
 
Neo4j - Cas d'usages pour votre métier
Neo4j - Cas d'usages pour votre métierNeo4j - Cas d'usages pour votre métier
Neo4j - Cas d'usages pour votre métier
 
Immersion Musicale avec Neo4j
Immersion Musicale avec Neo4jImmersion Musicale avec Neo4j
Immersion Musicale avec Neo4j
 
OrientDB vs Neo4j - and an introduction to NoSQL databases
OrientDB vs Neo4j - and an introduction to NoSQL databasesOrientDB vs Neo4j - and an introduction to NoSQL databases
OrientDB vs Neo4j - and an introduction to NoSQL databases
 
RDBMS to Graphs
RDBMS to GraphsRDBMS to Graphs
RDBMS to Graphs
 
The Graph Traversal Programming Pattern
The Graph Traversal Programming PatternThe Graph Traversal Programming Pattern
The Graph Traversal Programming Pattern
 
Recommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation EngineRecommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation Engine
 
Intro to Neo4j presentation
Intro to Neo4j presentationIntro to Neo4j presentation
Intro to Neo4j presentation
 
Introduction to Graph databases and Neo4j (by Stefan Armbruster)
Introduction to Graph databases and Neo4j (by Stefan Armbruster)Introduction to Graph databases and Neo4j (by Stefan Armbruster)
Introduction to Graph databases and Neo4j (by Stefan Armbruster)
 
Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH)
Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH) Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH)
Neo4j Introduction (Basics, Cypher, RDBMS to GRAPH)
 

Ähnlich wie Graph Databases for SQL Server Professionals - SQLSaturday #350 Winnipeg

Graph Databases for SQL Server Professionals
Graph Databases for SQL Server ProfessionalsGraph Databases for SQL Server Professionals
Graph Databases for SQL Server ProfessionalsStéphane Fréchette
 
Intro to Neo4j and Graph Databases
Intro to Neo4j and Graph DatabasesIntro to Neo4j and Graph Databases
Intro to Neo4j and Graph DatabasesNeo4j
 
Polyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jPolyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jCorie Pollock
 
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...SpanishPASSVC
 
Chapter Deck 2010 April
Chapter Deck 2010 AprilChapter Deck 2010 April
Chapter Deck 2010 AprilfwPASS
 
Graphs fun vjug2
Graphs fun vjug2Graphs fun vjug2
Graphs fun vjug2Neo4j
 
Graph databases for SQL Server profesionnals
Graph databases for SQL Server profesionnalsGraph databases for SQL Server profesionnals
Graph databases for SQL Server profesionnalsMSDEVMTL
 
Technology Roadmap by ericnel
Technology Roadmap by ericnelTechnology Roadmap by ericnel
Technology Roadmap by ericnelEric Nelson
 
Testing IoT Apps with the Cloud
Testing IoT Apps with the CloudTesting IoT Apps with the Cloud
Testing IoT Apps with the CloudJosiah Renaudin
 
E2D3 introduction
E2D3 introductionE2D3 introduction
E2D3 introductionE2D3
 
GraphTalk Helsinki - Introduction to Graphs and Neo4j
GraphTalk Helsinki - Introduction to Graphs and Neo4jGraphTalk Helsinki - Introduction to Graphs and Neo4j
GraphTalk Helsinki - Introduction to Graphs and Neo4jNeo4j
 
Neo4j Aura on AWS: The Customer Choice for Graph Databases
Neo4j Aura on AWS: The Customer Choice for Graph DatabasesNeo4j Aura on AWS: The Customer Choice for Graph Databases
Neo4j Aura on AWS: The Customer Choice for Graph DatabasesNeo4j
 
Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...
Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...
Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...Lohith Goudagere Nagaraj
 
There and Back Again, A Developer's Tale
There and Back Again, A Developer's TaleThere and Back Again, A Developer's Tale
There and Back Again, A Developer's TaleNeo4j
 
O365Engage17 - Microsoft graph the swiss army knife
O365Engage17 - Microsoft graph   the swiss army knifeO365Engage17 - Microsoft graph   the swiss army knife
O365Engage17 - Microsoft graph the swiss army knifeNCCOMMS
 
The New Frontier: Optimizing Big Data Exploration
The New Frontier: Optimizing Big Data ExplorationThe New Frontier: Optimizing Big Data Exploration
The New Frontier: Optimizing Big Data ExplorationInside Analysis
 
Microsoft products 2014
Microsoft products 2014Microsoft products 2014
Microsoft products 2014Ashraf Atef
 
DocOps — The Analytical Window to Your Customer’s Experience with Wade Clements
DocOps — The Analytical Window to Your Customer’s Experience with Wade ClementsDocOps — The Analytical Window to Your Customer’s Experience with Wade Clements
DocOps — The Analytical Window to Your Customer’s Experience with Wade ClementsInformation Development World
 
SharePoint 2013 REST APIs
SharePoint 2013 REST APIsSharePoint 2013 REST APIs
SharePoint 2013 REST APIsGiuseppe Marchi
 
Devops kc meetup_5_20_2013
Devops kc meetup_5_20_2013Devops kc meetup_5_20_2013
Devops kc meetup_5_20_2013Aaron Blythe
 

Ähnlich wie Graph Databases for SQL Server Professionals - SQLSaturday #350 Winnipeg (20)

Graph Databases for SQL Server Professionals
Graph Databases for SQL Server ProfessionalsGraph Databases for SQL Server Professionals
Graph Databases for SQL Server Professionals
 
Intro to Neo4j and Graph Databases
Intro to Neo4j and Graph DatabasesIntro to Neo4j and Graph Databases
Intro to Neo4j and Graph Databases
 
Polyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4jPolyglot Persistence with MongoDB and Neo4j
Polyglot Persistence with MongoDB and Neo4j
 
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...
 
Chapter Deck 2010 April
Chapter Deck 2010 AprilChapter Deck 2010 April
Chapter Deck 2010 April
 
Graphs fun vjug2
Graphs fun vjug2Graphs fun vjug2
Graphs fun vjug2
 
Graph databases for SQL Server profesionnals
Graph databases for SQL Server profesionnalsGraph databases for SQL Server profesionnals
Graph databases for SQL Server profesionnals
 
Technology Roadmap by ericnel
Technology Roadmap by ericnelTechnology Roadmap by ericnel
Technology Roadmap by ericnel
 
Testing IoT Apps with the Cloud
Testing IoT Apps with the CloudTesting IoT Apps with the Cloud
Testing IoT Apps with the Cloud
 
E2D3 introduction
E2D3 introductionE2D3 introduction
E2D3 introduction
 
GraphTalk Helsinki - Introduction to Graphs and Neo4j
GraphTalk Helsinki - Introduction to Graphs and Neo4jGraphTalk Helsinki - Introduction to Graphs and Neo4j
GraphTalk Helsinki - Introduction to Graphs and Neo4j
 
Neo4j Aura on AWS: The Customer Choice for Graph Databases
Neo4j Aura on AWS: The Customer Choice for Graph DatabasesNeo4j Aura on AWS: The Customer Choice for Graph Databases
Neo4j Aura on AWS: The Customer Choice for Graph Databases
 
Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...
Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...
Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...
 
There and Back Again, A Developer's Tale
There and Back Again, A Developer's TaleThere and Back Again, A Developer's Tale
There and Back Again, A Developer's Tale
 
O365Engage17 - Microsoft graph the swiss army knife
O365Engage17 - Microsoft graph   the swiss army knifeO365Engage17 - Microsoft graph   the swiss army knife
O365Engage17 - Microsoft graph the swiss army knife
 
The New Frontier: Optimizing Big Data Exploration
The New Frontier: Optimizing Big Data ExplorationThe New Frontier: Optimizing Big Data Exploration
The New Frontier: Optimizing Big Data Exploration
 
Microsoft products 2014
Microsoft products 2014Microsoft products 2014
Microsoft products 2014
 
DocOps — The Analytical Window to Your Customer’s Experience with Wade Clements
DocOps — The Analytical Window to Your Customer’s Experience with Wade ClementsDocOps — The Analytical Window to Your Customer’s Experience with Wade Clements
DocOps — The Analytical Window to Your Customer’s Experience with Wade Clements
 
SharePoint 2013 REST APIs
SharePoint 2013 REST APIsSharePoint 2013 REST APIs
SharePoint 2013 REST APIs
 
Devops kc meetup_5_20_2013
Devops kc meetup_5_20_2013Devops kc meetup_5_20_2013
Devops kc meetup_5_20_2013
 

Mehr von Stéphane Fréchette

Back to the future - Temporal Table in SQL Server 2016
Back to the future - Temporal Table in SQL Server 2016Back to the future - Temporal Table in SQL Server 2016
Back to the future - Temporal Table in SQL Server 2016Stéphane Fréchette
 
Self-Service Data Integration with Power Query - SQLSaturday #364 Boston
Self-Service Data Integration with Power Query - SQLSaturday #364 Boston  Self-Service Data Integration with Power Query - SQLSaturday #364 Boston
Self-Service Data Integration with Power Query - SQLSaturday #364 Boston Stéphane Fréchette
 
Power BI - Bring your data together
Power BI - Bring your data togetherPower BI - Bring your data together
Power BI - Bring your data togetherStéphane Fréchette
 
Data Analytics with R and SQL Server
Data Analytics with R and SQL ServerData Analytics with R and SQL Server
Data Analytics with R and SQL ServerStéphane Fréchette
 
Self-Service Data Integration with Power Query
Self-Service Data Integration with Power QuerySelf-Service Data Integration with Power Query
Self-Service Data Integration with Power QueryStéphane Fréchette
 
Le journalisme de données... par où commencer?
Le journalisme de données... par où commencer?Le journalisme de données... par où commencer?
Le journalisme de données... par où commencer?Stéphane Fréchette
 
Modernizing Your Data Warehouse using APS
Modernizing Your Data Warehouse using APSModernizing Your Data Warehouse using APS
Modernizing Your Data Warehouse using APSStéphane Fréchette
 
SQL Server 2014 Faster Insights from Any Data
SQL Server 2014 Faster Insights from Any DataSQL Server 2014 Faster Insights from Any Data
SQL Server 2014 Faster Insights from Any DataStéphane Fréchette
 
On the move with Big Data (Hadoop, Pig, Sqoop, SSIS...)
On the move with Big Data (Hadoop, Pig, Sqoop, SSIS...)On the move with Big Data (Hadoop, Pig, Sqoop, SSIS...)
On the move with Big Data (Hadoop, Pig, Sqoop, SSIS...)Stéphane Fréchette
 
Introduction to Master Data Services in SQL Server 2012
Introduction to Master Data Services in SQL Server 2012Introduction to Master Data Services in SQL Server 2012
Introduction to Master Data Services in SQL Server 2012Stéphane Fréchette
 
Data Quality Services in SQL Server 2012
Data Quality Services in SQL Server 2012Data Quality Services in SQL Server 2012
Data Quality Services in SQL Server 2012Stéphane Fréchette
 
Business Intelligence in Excel 2013
Business Intelligence in Excel 2013Business Intelligence in Excel 2013
Business Intelligence in Excel 2013Stéphane Fréchette
 
Gatineau Ouverte troisième rencontre publique
Gatineau Ouverte troisième rencontre publiqueGatineau Ouverte troisième rencontre publique
Gatineau Ouverte troisième rencontre publiqueStéphane Fréchette
 
Gatineau Ouverte première rencontre publique
Gatineau Ouverte première rencontre publiqueGatineau Ouverte première rencontre publique
Gatineau Ouverte première rencontre publiqueStéphane Fréchette
 

Mehr von Stéphane Fréchette (17)

Back to the future - Temporal Table in SQL Server 2016
Back to the future - Temporal Table in SQL Server 2016Back to the future - Temporal Table in SQL Server 2016
Back to the future - Temporal Table in SQL Server 2016
 
Self-Service Data Integration with Power Query - SQLSaturday #364 Boston
Self-Service Data Integration with Power Query - SQLSaturday #364 Boston  Self-Service Data Integration with Power Query - SQLSaturday #364 Boston
Self-Service Data Integration with Power Query - SQLSaturday #364 Boston
 
Power BI - Bring your data together
Power BI - Bring your data togetherPower BI - Bring your data together
Power BI - Bring your data together
 
Data Analytics with R and SQL Server
Data Analytics with R and SQL ServerData Analytics with R and SQL Server
Data Analytics with R and SQL Server
 
Self-Service Data Integration with Power Query
Self-Service Data Integration with Power QuerySelf-Service Data Integration with Power Query
Self-Service Data Integration with Power Query
 
Introduction to Azure HDInsight
Introduction to Azure HDInsightIntroduction to Azure HDInsight
Introduction to Azure HDInsight
 
Le journalisme de données... par où commencer?
Le journalisme de données... par où commencer?Le journalisme de données... par où commencer?
Le journalisme de données... par où commencer?
 
Modernizing Your Data Warehouse using APS
Modernizing Your Data Warehouse using APSModernizing Your Data Warehouse using APS
Modernizing Your Data Warehouse using APS
 
SQL Server 2014 Faster Insights from Any Data
SQL Server 2014 Faster Insights from Any DataSQL Server 2014 Faster Insights from Any Data
SQL Server 2014 Faster Insights from Any Data
 
On the move with Big Data (Hadoop, Pig, Sqoop, SSIS...)
On the move with Big Data (Hadoop, Pig, Sqoop, SSIS...)On the move with Big Data (Hadoop, Pig, Sqoop, SSIS...)
On the move with Big Data (Hadoop, Pig, Sqoop, SSIS...)
 
TEDxGatineau
TEDxGatineau TEDxGatineau
TEDxGatineau
 
Power BI
Power BIPower BI
Power BI
 
Introduction to Master Data Services in SQL Server 2012
Introduction to Master Data Services in SQL Server 2012Introduction to Master Data Services in SQL Server 2012
Introduction to Master Data Services in SQL Server 2012
 
Data Quality Services in SQL Server 2012
Data Quality Services in SQL Server 2012Data Quality Services in SQL Server 2012
Data Quality Services in SQL Server 2012
 
Business Intelligence in Excel 2013
Business Intelligence in Excel 2013Business Intelligence in Excel 2013
Business Intelligence in Excel 2013
 
Gatineau Ouverte troisième rencontre publique
Gatineau Ouverte troisième rencontre publiqueGatineau Ouverte troisième rencontre publique
Gatineau Ouverte troisième rencontre publique
 
Gatineau Ouverte première rencontre publique
Gatineau Ouverte première rencontre publiqueGatineau Ouverte première rencontre publique
Gatineau Ouverte première rencontre publique
 

Kürzlich hochgeladen

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 

Kürzlich hochgeladen (20)

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 

Graph Databases for SQL Server Professionals - SQLSaturday #350 Winnipeg

  • 1. Graph Databases for SQL Server Professionals Stéphane Fréchette
  • 2. Who am I? My name is Stéphane Fréchette SQL Server MVP | Consultant | Speaker | Database & BI Architect | NoSQL. Drums, good food and fine wine. Founder @ukubu, @GatineauOuverte, @TEDxGatineau I have a passion for architecting, designing and building solutions that matter. Twitter: @sfrechette Blog: stephanefrechette.com Email: stephanefrechette@ukubu.com 2 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 3. Thanks to Our Sponsors! Gold Silver Bronze
  • 4. Session Outline  What is a Graph?  What is Neo4j?  Data Modeling – The Property Graph  Cypher Query Language  Importing Data…  Use Cases  Demos  Resources 4 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 5. What is a Graph? 5 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 6. Are these Graphs? 6 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 7. This is a Graph Node Relationship A Property Graph 7 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 8. Organization Project Graph 8 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 9. Twitter Social Graph 9 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 10. What is Neo4j? An open-source graph database by Neo Technology. Neo4j stores data in nodes connected by directed, typed relationships with properties on both, also know as a Property Graph  Fully ACID compliant  Massively scalable, up to several billion nodes/relationships/properties  Highly-available, when distributed across multiple machines  Accessible by a convenient REST interface or an object-oriented Java API 11/10 | 25/2014 | SQLSaturday Winnipeg #350
  • 11. Data Modeling From SQL Server to Graph Property Graph 11 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 12. Example: Meetup Data In SQL Server Member MeetupOrganizer MeetupMember Meetup ID Member 1 Daniel 2 Stephane 3 John 4 Randy ID Name 1 Ottawa SQL Server User Group 2 Ottawa JavaScript 3 Ottawa Visio User Group 4 Ottawa Tableau User Group 5 Dirty Dancing Ottawa MemberID MeetupID 2 1 1 2 3 3 2 4 3 5 MemberID MeetupID 3 1 3 2 4 2 4 4 1 5 12 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 13. Example: Meetup Data In a Graph Member Meetup name: ‘Stephane’ name: ‘Ottawa Tableau User Group’ name: ‘Ottawa SQL Server User Group’ name: ‘John’ name: ‘Ottawa JavaScript’ name: ‘Ottawa Visio User Group’ name: ‘Dirty Dancing Ottawa’ name: ‘Randy’ name: ‘Daniel’ 13 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 14. Cypher Query Language Cypher is a declarative graph query language that allows for expressive and efficient querying and updating of the graph store  Pattern-matching  Declarative: what to retrieve, not how to retrieve it  Inspired from other known Language (SQL, SPARQL, Haskell, Python)  Aggregation, Ordering, Limit  Update the Graph 14 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 15. Cypher and T-SQL Cypher also has a number of keywords that have a direct equivalence with SQL which makes it a curiously familiar language  WHERE  ORDER BY  LIMIT  SUM, COUNT, STDEVP, MIN, MAX etc…  LTRIM, UPPER, LOWER, REPLACE, LEFT, RIGHT, SUBSTRING  DISTINCT  CASE (SQL Server Pros) – [:WILL_LOVE] -> (Cypher) 15 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 16. Cypher - Meetup 16 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 17. Neo4j Browser 11/17 | 25/2014 | SQLSaturday Winnipeg #350
  • 18. Demo (let’s query some data…) 18 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 19. Importing Data… 19 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 20. Importing Data… Some important considerations… Different import scenarios  Dataset size: 1000s, 100000s, 10000000s  Dataset format (source): Database, File (CSV, Spreadsheet, GraphML, Geoff), Service, Other  Import type: Initial Bulk Load, Incremental Load, Initial Bulk Load + Incremental Load Different import tools  Spreadsheet based  Neo4j-shell based: (Cypher, neo4j-shell-tools, Cypher LOAD CSV)  Command-line based: Batch Importer  Neo4j Brower based  ETL Tools: (Talend, Mulesoft, Pentaho Kettle)  Custom software: (Java API, REST API, Spring Data Neo4j) 20 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 21. Many different mappings Import Scenarios Import Tools Not always clear what you should be using Depends on your skillsets, dataset size… (lots of other stuff) Choose wisely! 21 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 22. Demo (walkthrough on importing data…) 22 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 23. The Sample Dataset 23 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 24. Importing using Spreadsheets Very small size datasets < 1000, easy to use Format data in spreadsheet Generate Cypher statements with formulas Copy and Execute Cypher in Neo4j browser 24 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 25. Importing using Spreadsheets 25 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 26. Importing using neo4j-shell-tools Small to medium size datasets https://github.com/jexp/neo4j-shell-tools Format data in CSV files Create import-cypher commands for neo4j-shell-tools Execute commands from neo4j-shell 26 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 27. Importing using neo4j-shell-tools 27 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 28. Importing using LOAD CSV Native Cypher Format data in CSV files Create “LOAD CSV” commands Execute command from neo4j-shell or browser Additional “cleanup” for Labels and RelTypes 28 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 29. Importing using LOAD CSV 29 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 30. Importing using Batch Importer Non-transactional import, suited for very very large datasets Format data in TSV files Execute Batch Import command Copy store files to Neo4j Server directory Start Neo4j Server with generated store files 30 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 31. Use Cases Principal uses of Graph Database include:  Network and Data Center Management (Queries: Impact Analysis, Root Cause Analysis, Quality-of-Service Mapping, Asset Management)  Authorization and Access (Queries : Access Management, Interconnected Group Organization, Provenance)  Social (Queries : Friend Recommendations, Sharing & Collaboration, Influencer Analysis)  Geo (Queries : Routing, Logistics, Capacity Planning)  Recommendations (Queries : Product, Social, Service, and Professional Recommendations)  Fraud Detection http://www.neotechnology.com/neo4j-use-cases/ 31 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 32. Summary (graphs)-[:ARE]->(everywhere) 32 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 33. Resources  Neo Technology http://www.neotechnology.com/  Neoj.org (Learn, Develop, Downloads,…) http://www.neo4j.org/  Neo4j on Vimeo http://vimeo.com/neo4j  Neo4j on SlideShare http://www.slideshare.net/neo4j  Neo4j on Github https://github.com/neo4j  Neo4j Cypher Cheat Sheet http://docs.neo4j.org/refcard/2.1/  Neo4j Graph Database as a Service http://www.graphenedb.com/  Linkurious – The easiest way to explore graph databases http://linkurio.us/  KeyLines- Visualize dynamic networks http://keylines.com/  Experiments with NEO4J: Using a graph database as a SQL Server metadata hub http://bit.ly/V2PrxN  Kenny Bastani http://www.kennybastani.com/  Rik Van Bruggen http://blog.bruggen.com/  Max de Marzi http://maxdemarzi.com/  Better Software Development http://jexp.de/blog/  Graph Databases (Free Book) http://graphdatabases.com/  Neo4j GraphGist http://gist.neo4j.org/  GraphConnect Conference http://graphconnect.com/  Titan – Distributed Graph Database https://thinkaurelius.github.io/titan/  InfiniteGraph http://www.infinitegraph.com/  OrientDB http://www.orientechnologies.com/  Cayley by Google https://github.com/google/cayley 33 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 34. What Questions Do You Have? 34 | 11/25/2014 | SQLSaturday Winnipeg #350
  • 35. Thank You For attending this session 35 | 11/25/2014 | SQLSaturday Winnipeg #350

Hinweis der Redaktion

  1. Nope, these are Charts, Bar and Line Charts…
  2. This a Graph, a Property Graph
  3. Sample Organization Project Graph
  4. Sample Twitter Social Graph
  5. NoSQL Category