Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

of

Introduction to Neo4j by Andreas Kollegger Slide 1 Introduction to Neo4j by Andreas Kollegger Slide 2 Introduction to Neo4j by Andreas Kollegger Slide 3 Introduction to Neo4j by Andreas Kollegger Slide 4 Introduction to Neo4j by Andreas Kollegger Slide 5 Introduction to Neo4j by Andreas Kollegger Slide 6 Introduction to Neo4j by Andreas Kollegger Slide 7 Introduction to Neo4j by Andreas Kollegger Slide 8 Introduction to Neo4j by Andreas Kollegger Slide 9 Introduction to Neo4j by Andreas Kollegger Slide 10 Introduction to Neo4j by Andreas Kollegger Slide 11 Introduction to Neo4j by Andreas Kollegger Slide 12 Introduction to Neo4j by Andreas Kollegger Slide 13 Introduction to Neo4j by Andreas Kollegger Slide 14 Introduction to Neo4j by Andreas Kollegger Slide 15 Introduction to Neo4j by Andreas Kollegger Slide 16 Introduction to Neo4j by Andreas Kollegger Slide 17 Introduction to Neo4j by Andreas Kollegger Slide 18 Introduction to Neo4j by Andreas Kollegger Slide 19 Introduction to Neo4j by Andreas Kollegger Slide 20 Introduction to Neo4j by Andreas Kollegger Slide 21 Introduction to Neo4j by Andreas Kollegger Slide 22 Introduction to Neo4j by Andreas Kollegger Slide 23 Introduction to Neo4j by Andreas Kollegger Slide 24 Introduction to Neo4j by Andreas Kollegger Slide 25 Introduction to Neo4j by Andreas Kollegger Slide 26 Introduction to Neo4j by Andreas Kollegger Slide 27 Introduction to Neo4j by Andreas Kollegger Slide 28 Introduction to Neo4j by Andreas Kollegger Slide 29 Introduction to Neo4j by Andreas Kollegger Slide 30 Introduction to Neo4j by Andreas Kollegger Slide 31 Introduction to Neo4j by Andreas Kollegger Slide 32 Introduction to Neo4j by Andreas Kollegger Slide 33 Introduction to Neo4j by Andreas Kollegger Slide 34 Introduction to Neo4j by Andreas Kollegger Slide 35 Introduction to Neo4j by Andreas Kollegger Slide 36 Introduction to Neo4j by Andreas Kollegger Slide 37 Introduction to Neo4j by Andreas Kollegger Slide 38 Introduction to Neo4j by Andreas Kollegger Slide 39 Introduction to Neo4j by Andreas Kollegger Slide 40 Introduction to Neo4j by Andreas Kollegger Slide 41 Introduction to Neo4j by Andreas Kollegger Slide 42 Introduction to Neo4j by Andreas Kollegger Slide 43 Introduction to Neo4j by Andreas Kollegger Slide 44 Introduction to Neo4j by Andreas Kollegger Slide 45
Upcoming SlideShare
What to Upload to SlideShare
Next
Download to read offline and view in fullscreen.

1 Like

Share

Download to read offline

Introduction to Neo4j by Andreas Kollegger

Download to read offline

The presentation "Introduction to Neo4j" was given at the Cloud Study Network community by Andreas Kollegger on September 23, 2021.

Event details can be found at https://www.meetup.com/Cloud-Study-Network/events/280683331/

Recording of the call can be accessed at https://www.youtube.com/watch?v=4QFJd4pkV7U

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Introduction to Neo4j by Andreas Kollegger

  1. 1. © Neo4j, Inc. 2021 CC By-SA 4.0 1 Introduction to Neo4j Andreas Kollegger abk@neo4j Neo4j Graph Academy Live
  2. 2. © Neo4j, Inc. 2021 CC By-SA 4.0 we will answer these questions: • What is a graph database? • Why use a graph database? • How do you query a graph database? • How is this transformative? In this session
  3. 3. © Neo4j, Inc. 2021 CC By-SA 4.0 3 What is a graph database? graph + database = graph database
  4. 4. © Neo4j, Inc. 2021 CC By-SA 4.0 4 A graph is... a mathematical structure used to model pairwise relations between objects Seven Bridges of Konigsberg problem. Leonhard Euler, 1735
  5. 5. © Neo4j, Inc. 2021 CC By-SA 4.0 5 A graph database is... a database which organizes data using graph structures a graph
  6. 6. © Neo4j, Inc. 2021 CC By-SA 4.0 Bridges: 1. Krämerbrücke (Trader's Bridge) 2. Schmiedebrücke (Forged Bridge) 3. Holzbrücke (Wood Bridge) 4. Dom Brücke (Cathedral Bridge) 5. Grüne Brücke (Green Bridge) 6. Köttelbrücke (Dung Bridge) 7. Hohe Brücke (High Bridge) 6 A graph database is... a database which organizes data using graph structures Districts: A. Kneiphof (Island, West) B. Altstadt (North) C. Lomse (Island, East) D. Löbenicht (South) a graph with data
  7. 7. © Neo4j, Inc. 2021 CC By-SA 4.0 Bridges: 1. Krämerbrücke (Trader's Bridge) cost: 1.0 2. Schmiedebrücke (Forged Bridge) cost: 1.0 3. Holzbrücke (Wood Bridge) cost: 1.5 4. Dom Brücke (Cathedral Bridge) cost: 1.5 5. Grüne Brücke (Green Bridge) cost: 1.0 6. Köttelbrücke (Dung Bridge) cost: 1.0 7. Hohe Brücke (High Bridge) cost:. 4.0 7 A graph database is... a database which organizes data using graph structures Land: A. Kneiphof (Island, Central) area: 25 B. Altstadt (North) area: 300 C. Lomse (Island, East) area: 75 D. Löbenicht (South) area: 350
  8. 8. © Neo4j, Inc. 2021 CC By-SA 4.0 8 Why use a graph database? good question
  9. 9. © Neo4j, Inc. 2021 CC By-SA 4.0 9 Use a graph database... to enjoy Graph benefits • less friction between how you think and how the data looks • user-centric design • better recommendations • deeper insights to solve Graph problems • model connected data • faster recursive queries • path finding • dependency analysis 9
  10. 10. © Neo4j, Inc. 2021 CC By-SA 4.0
  11. 11. © Neo4j, Inc. 2021 CC By-SA 4.0 Follow the flow - buying sport shoes
  12. 12. © Neo4j, Inc. 2021 CC By-SA 4.0 Panama papers: simple model, powerful outcome
  13. 13. © Neo4j, Inc. 2021 CC By-SA 4.0 13 The Panama papers data model...
  14. 14. © Neo4j, Inc. 2021 CC By-SA 4.0 Roses are red, facebook is blue, No mutual friends, So who are you?
  15. 15. © Neo4j, Inc. 2021 CC By-SA 4.0 ...or co-actors of co-actors Friends of friends
  16. 16. © Neo4j, Inc. 2021 CC By-SA 4.0 What are good graph scenarios?
  17. 17. © Neo4j, Inc. 2021 CC By-SA 4.0 Scenario 1: Does our problem involve understanding relationships between entities? Identifying good graph scenarios ● Recommendations ● Fraud detection ● Finding duplicates ● Data lineage
  18. 18. © Neo4j, Inc. 2021 CC By-SA 4.0 Scenario 2: Does the problem involve a lot of self-referencing to the same type of entity? Identifying good graph scenarios ● Organisational hierarchies ● Access management ● Social influencers ● Friends of friends
  19. 19. © Neo4j, Inc. 2021 CC By-SA 4.0 Scenario 3: Does the problem explore relationships of varying or unknown depth? Identifying good graph scenarios ● Supply chain visibility ● Bill of Materials ● Network management
  20. 20. © Neo4j, Inc. 2021 CC By-SA 4.0 Scenario 4: Does our problem involve discovering lots of different routes or paths? Identifying good graph scenarios ● Logistics and routing ● Infrastructure management ● Dependency tracing
  21. 21. © Neo4j, Inc. 2021 CC By-SA 4.0 21 How do you query a graph database? walk like a patternician
  22. 22. © Neo4j, Inc. 2021 CC By-SA 4.0 22 Graph basics... Node ● The main data element from which graphs are constructed Jane car
  23. 23. © Neo4j, Inc. 2021 CC By-SA 4.0 23 Graph basics... 23 Node ● The main data element from which graphs are constructed Relationship ● A link between two nodes. Has: ○ Direction ○ Type ● A node without relationships is permitted. A relationship without nodes is not Jane car OWNS
  24. 24. © Neo4j, Inc. 2021 CC By-SA 4.0 24 Graph basics... Node Relationship OWNS
  25. 25. © Neo4j, Inc. 2021 CC By-SA 4.0 25 Graph basics... Node Relationship :Person :Car OWNS Label ● Define node category (optional)
  26. 26. © Neo4j, Inc. 2021 CC By-SA 4.0 26 Graph basics... Node Relationship :Person :Car OWNS Label ● Define node category (optional) ● Can have more than one :Asset
  27. 27. © Neo4j, Inc. 2021 CC By-SA 4.0 27 Graph basics... Node Relationship :Person :Car OWNS Label ● Define node category (optional) ● Can have more than one Properties ● Enrich a node or relationship ● Simple key/value pairs! name: Jane make: Volvo model: V60 since: 2018 :Asset
  28. 28. © Neo4j, Inc. 2021 CC By-SA 4.0 28 Cypher - the graph query language A pattern-matching query language made for graphs
  29. 29. © Neo4j, Inc. 2021 CC By-SA 4.0 29 Cypher - the graph query language A pattern matching query language made for graphs ● Declarative ● Expressive ● Pattern-Matching
  30. 30. © Neo4j, Inc. 2021 CC By-SA 4.0 30 Cypher - the graph query language 30  A pattern matching query language made for graphs ● Declarative ● Expressive ● Pattern Matching With ASCII ART ¯_(ツ)_/¯
  31. 31. © Neo4j, Inc. 2021 CC By-SA 4.0 Use MATCH to retrieve nodes //Match all nodes MATCH (n) RETURN n; 31
  32. 32. © Neo4j, Inc. 2021 CC By-SA 4.0 Use MATCH to retrieve nodes //Match all nodes MATCH (n) RETURN n; //Match all nodes with a Person label MATCH (n:Person) RETURN n; 32
  33. 33. © Neo4j, Inc. 2021 CC By-SA 4.0 Use MATCH to retrieve nodes //Match all nodes MATCH (n) RETURN n; //Match all nodes with a Person label MATCH (n:Person) RETURN n; //Match all nodes with a Person label and property name is "Tom Hanks" MATCH (n:Person {name: "Tom Hanks"}) RETURN n; 33
  34. 34. © Neo4j, Inc. 2021 CC By-SA 4.0 //Return nodes with label Person and name property is "Tom Hanks" - Inline MATCH (p:Person {name: "Tom Hanks"}) //Only works with exact matches RETURN p; Use MATCH and properties to retrieve nodes 34
  35. 35. © Neo4j, Inc. 2021 CC By-SA 4.0 //Return nodes with label Person and name property is "Tom Hanks" - Inline MATCH (p:Person {name: "Tom Hanks"}) //Only works with exact matches RETURN p; //Return nodes with label Person and name property equals "Tom Hanks" MATCH (p:Person) WHERE p.name = "Tom Hanks" RETURN p; Use MATCH and properties to retrieve nodes 35
  36. 36. © Neo4j, Inc. 2021 CC By-SA 4.0 //Return nodes with label Person and name property is "Tom Hanks" - Inline MATCH (p:Person {name: "Tom Hanks"}) //Only works with exact matches RETURN p; //Return nodes with label Person and name property equals "Tom Hanks" MATCH (p:Person) WHERE p.name = "Tom Hanks" RETURN p; //Return nodes with label Movie, released property is between 1991 and 1999 MATCH (m:Movie) WHERE m.released > 1990 AND m.released < 2000 RETURN m; Use MATCH and properties to retrieve nodes 36
  37. 37. © Neo4j, Inc. 2021 CC By-SA 4.0 Extending the MATCH 37
  38. 38. © Neo4j, Inc. 2021 CC By-SA 4.0 //Find all the movies Tom Hanks acted in MATCH (:Person {name:"Tom Hanks"})-[:ACTED_IN]->(m:Movie) RETURN m.title; Extending the MATCH 38
  39. 39. © Neo4j, Inc. 2021 CC By-SA 4.0 //Find all the movies Tom Hanks acted in MATCH (:Person {name:"Tom Hanks"})-[:ACTED_IN]->(m:Movie) RETURN m.title; //Find all of the co-actors Tom Hanks have worked with MATCH (:Person {name:"Tom Hanks"})-->(:Movie)<-[:ACTED_IN]-(coActor:Person) RETURN coActor.name; Extending the MATCH 39
  40. 40. © Neo4j, Inc. 2021 CC By-SA 4.0 40 How is this transformative? graph thinking
  41. 41. © Neo4j, Inc. 2021 CC By-SA 4.0 Bridges: 1. Krämerbrücke (Trader's Bridge) cost: 1.0 2. Schmiedebrücke (Forged Bridge) cost: 1.0 3. Holzbrücke (Wood Bridge) cost: 1.5 4. Dom Brücke (Cathedral Bridge) cost: 1.5 5. Grüne Brücke (Green Bridge) cost: 1.0 6. Köttelbrücke (Dung Bridge) cost: 1.0 7. Hohe Brücke (High Bridge) cost:. 4.0 41 A graph database is... a database which organizes data using graph structures Districts: A. Kneiphof (Island, West) area: 25 B. Altstadt (North) area: 300 C. Lomse (Island, East) area: 75 D. Löbenicht (South) area: 350
  42. 42. © Neo4j, Inc. 2021 CC By-SA 4.0 42 A graph database is optimized for working with the connections in data. All data is connected.
  43. 43. © Neo4j, Inc. 2021 CC By-SA 4.0 All data is connected? • if you have people, you have relationships • if you have places, you have roads • if you have messages, you have replies • if you have transactions, you have… transactions • if you have things, you have connections within those things and to other things • if you have data, you can always discover or add connections
  44. 44. © Neo4j, Inc. 2021 CC By-SA 4.0 44 If you have connections, you have new ways to understand, to discover, to enrich the data you already have.
  45. 45. © Neo4j, Inc. 2021 CC By-SA 4.0 45 Thank you! Want more! Take this course: Neo4j Overview https://neo4j.com/graphacademy/training-overview-40/ Next session: Intro to Cypher Please steal these slides! But give us credit. :)
  • CloudStudyNetwork

    Oct. 3, 2021

The presentation "Introduction to Neo4j" was given at the Cloud Study Network community by Andreas Kollegger on September 23, 2021. Event details can be found at https://www.meetup.com/Cloud-Study-Network/events/280683331/ Recording of the call can be accessed at https://www.youtube.com/watch?v=4QFJd4pkV7U

Views

Total views

83

On Slideshare

0

From embeds

0

Number of embeds

0

Actions

Downloads

0

Shares

0

Comments

0

Likes

1

×