Graph Databases: What? Why? and How?

Graph Databases: What? Why? and How?

Introduction to graph databases with a simple practical example

5eba81d891f309e10028977674aeb3a6?s=128

Nicky Wrightson

September 20, 2018
Tweet

Transcript

  1. Graph databases: What? Why? and How? By Nicky Wrightson -

    Principal Engineer @ FT
  2. What? What is a graph database? Why? Why use a

    graph database? How? How to use a graph database
  3. What? What is a graph database?

  4. Graph Theory G = (V, E) Where V is a

    set of nodes also called vertices E is a set of edges also called links
  5. “a graph database is a database designed to treat the

    relationships between data as equally important to the data itself” Neo4J https://neo4j.com/developer/graph-database/
  6. None
  7. None
  8. None
  9. What? What is a graph database? Why? Why use a

    graph database?
  10. Live demo time: http://www.six-degrees.ft.com

  11. None
  12. Implicitly any content about horsemeat is also about food safety

    and so on
  13. What? What is a graph database? Why? Why use a

    graph database? How? How to use a graph database
  14. How can we store our Graph?

  15. Triple Stores

  16. PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name WHERE { ?person foaf:name ?name

    . } Find me all subjects (?person) and objects (?name) linked with the foaf:name predicate
  17. Cosmos DB Property Graphs

  18. What makes a good candidate for a graph database?

  19. https://github.com/nwrigh/game-of-thrones-dataset

  20. https://github.com/nwrigh/game-of-thrones-dataset

  21. https://github.com/nwrigh/game-of-thrones-dataset

  22. https://github.com/nwrigh/game-of-thrones-dataset

  23. LOAD CSV WITH HEADERS FROM “characters.csv” AS line https://github.com/nwrigh/game-of-thrones-dataset

  24. https://github.com/nwrigh/game-of-thrones-dataset

  25. Give me the details of who killed their own relative?

    MATCH (killer:Person)- [:HAS_FATHER|:HAS_MOTHER|:HAS_SIBLING]- (relative:Person)-[:KILLED_BY]-(killer) RETURN killer, relative https://github.com/nwrigh/game-of-thrones-dataset
  26. https://github.com/nwrigh/game-of-thrones-dataset

  27. Other examples …. Which house killed the most? Which house

    married the most? https://github.com/nwrigh/game-of-thrones-dataset
  28. Gotchas with Property Graphs

  29. Watch out for the size

  30. Some more things to look out for

  31. Conclusion

  32. @nickywrightson We're hiring! https://ft.com/dev/null https://aboutus.ft.com/en-gb/careers/ Thanks!