Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Get to Know the Real World: Discovering Connected Data with a Graph Database

Jennifer Reif
September 09, 2019

Get to Know the Real World: Discovering Connected Data with a Graph Database

In this session, we will see how a graph database is different from other types of data stores and how it can transform your applications and data. Data science principles and tools can further aid in exploring and understanding complex data to expand possible uses and value.
We will see how to create, query, and display data in the graph and learn how to use simple tools to interact with the database. We will cover the whiteboard-friendly model and the basics of the Cypher query language. Live demos will show users the power of connected data and data science to understand data structure in the graph.

Jennifer Reif

September 09, 2019
Tweet

More Decks by Jennifer Reif

Other Decks in Technology

Transcript

  1. Get to Know the Real World…
    Discovering Connected Data with a Graph Database
    Jennifer Reif
    Neo4j
    @JMHReif

    View Slide

  2. Who Am I?
    • Developer Relations Engineer for Neo4j

    • Continuous learner

    • Conference speaker

    • Blogger

    • Hobbies: cats, coffee, traveling
    Email: [email protected]
    Twitter: @JMHReif

    View Slide

  3. What is a Graph Database?

    View Slide

  4. Graph
    Chart

    View Slide

  5. Database - specifically graph
    • Database: a structured set of data held in a computer,
    especially one that is accessible in various ways.
    • Relational? NoSQL? Graph?

    • Graph database: uses graph structures for semantic
    queries with nodes, edges and properties to represent
    and store data.

    View Slide

  6. Why would I choose graph?

    View Slide

  7. Graphs show how data is connected

    View Slide

  8. Relational
    Graph

    View Slide

  9. Other NoSQL Graph

    View Slide

  10. View Slide

  11. Graphs add context and meaning

    View Slide

  12. Graph use cases
    Social Network Fraud Detection Network & IT

    Operations
    Identity and

    Access Management
    Graph-based Search

    View Slide

  13. Connected data adds meaning to analytics

    View Slide

  14. View Slide

  15. Improves accuracy
    Machine Learning Pipeline

    View Slide

  16. Graph Data Science Uses
    Financial

    Crimes
    Drug

    Discovery
    Recommendations Customer

    Segmentation
    Cybersecurity Churn Prediction Predictive

    Maintenance Search & MDM

    View Slide

  17. View Slide

  18. Understanding the graph
    model

    View Slide

  19. Whiteboard
    Friendliness
    Easy to design and model direct representation of the model

    View Slide

  20. Whiteboard friendliness

    View Slide

  21. Whiteboard friendliness
    title: The Lord of the Rings…
    released: 2003
    Movie
    Cast
    name: Orlando Bloom
    name: Frodo Baggins
    Character
    PLAYED
    APPEARS_IN
    name: Elijah Wood
    Cast
    Character
    name: Legolas
    Character
    name: Aragorn
    name: Viggo Mortensen
    Cast
    PLAYED
    PLAYED
    APPEARS_IN
    APPEARS_IN

    View Slide

  22. Whiteboard friendliness

    View Slide

  23. How to construct a graph

    View Slide

  24. Property Graph Data Model
    • 2 Main Components:
    • Nodes
    • Relationships
    • Additional Components:
    • Labels

    • Properties

    View Slide

  25. Property Graph Data Model
    • Nodes:
    • Represent the objects in the graph
    • Can be categorized using Labels
    Person
    Technology
    Person
    Person
    Company
    Technology

    View Slide

  26. Property Graph Data Model
    • Nodes:
    • Represent the objects in the graph
    • Can be categorized using Labels
    • Relationships:
    • Relate nodes by type and direction
    Person
    Person
    Company
    Technology
    :LIKES
    :IS_FRIENDS_WITH
    :WORKS_FOR

    View Slide

  27. Property Graph Data Model
    • Nodes:
    • Represent the objects in the graph
    • Can be categorized using Labels
    • Relationships:
    • Relate nodes by type and direction

    • Properties:
    • Name-value pairs that can be applied
    to nodes or relationships
    :LIKES
    :IS_FRIENDS_WITH
    :WORKS_FOR
    Person
    name: Michael
    Person
    name: Jennifer
    Technology
    type: Graphs
    since: 2018
    Company
    name: Neo4j

    View Slide

  28. Cypher Query Language….
    SQL for graphs

    View Slide

  29. Cypher: Powerful and Expressive
    CREATE (:Person { name: ‘Jennifer’}) -[:WORKS_FOR]-> (:Company { name: ‘Neo4j’})
    LABEL PROPERTY
    NODE NODE
    LABEL PROPERTY
    Jennifer Neo4j
    WORKS_FOR

    View Slide

  30. Cypher: Powerful and Expressive
    MATCH (:Person { name: ‘Jennifer’} ) -[:WORKS_FOR]-> ( whom ) 

    RETURN whom
    Neo4j
    WORKS_FOR
    Jennifer

    View Slide

  31. Demo Time!!

    View Slide

  32. Resources
    • Neo4j download: https://neo4j.com/download/

    • Neo4j sandbox: https://neo4j.com/sandbox-v2/

    • Neo4j guides: https://neo4j.com/developer/get-started

    • Cypher: https://neo4j.com/developer/cypher/

    • LOAD CSV: https://neo4j.com/developer/guide-import-csv/

    • APOC: https://neo4j-contrib.github.io/neo4j-apoc-procedures/

    • Neo4j Certification: https://neo4j.com/graphacademy/neo4j-certification/
    @JMHReif
    [email protected]

    View Slide