Course

Modeling and Importing Data into Neo4j Workshop

Hands-on Neo4j workshop. Model the Northwind dataset as a graph, import CSV data, and write Cypher queries that power product recommendations.

2 hours11 lessons across 5 modules
About this workshop

In this 2-hour workshop, you will learn

Modeling and Importing Data into Neo4j is a hands-on Neo4j workshop in which you design a Full definition for data model (opens in a new tab)The labels, relationship types and properties chosen to represent a domain. and build a working product recommendation engine. Over roughly two hours you take the classic Northwind retail dataset, a set of CSV files describing products, customers, and orders, and turn it into a graph that answers a real business question: "What products do people like me buy that I haven't bought yet?"

The workshop is designed to be delivered by an instructor, with this course acting as your companion. You follow the same material in your browser, run every query yourself, and keep your progress after the session ends. If you missed the live event, you can work through the whole workshop at your own pace, as every step is written out in full. Northwind's familiar relational schema makes it the perfect vehicle for learning graph modeling: you already know what orders and product categories look like in tables, so seeing the same data as Full definition for node (opens in a new tab)A vertex in a graph. In a property graph it can carry labels and properties. and Full definition for relationship (opens in a new tab)A named, directed connection between two nodes. Every relationship has a type, a start node and an end node. shows you exactly what changes when you move to a graph.

  • Graph Data Modeling

    Apply graph modeling principles to transform a relational dataset into nodes, relationships, and properties that reflect real-world connections.

  • Importing Tabular Data

    Load CSV files into Neo4j using LOAD CSV, mapping flat tabular rows to graph structures including nodes and typed relationships.

  • Cypher Queries

    Write Cypher queries that traverse graph relationships to surface product recommendations and answer business questions against the imported dataset.

Before you start

What you need to take part.

  • A GraphAcademy account

    The workshop is delivered here on GraphAcademy, so you need to be signed in to work through the lessons and keep your progress. Creating an account is free.

    Sign in or create an account

  • Who this workshop is for

    This workshop is for developers, data engineers, analysts, and architects who want to learn graph data modeling by doing it. It is written for beginners: there are no formal prerequisites, you need no prior experience with Neo4j or graph databases, and every Full definition for Cypher (opens in a new tab)Neo4j's implementation of GQL, the ISO standard query language for graph databases. It is declarative: you describe the pattern to find, and the database decides how to find it. Full definition for pattern (opens in a new tab)A graph structure written in Cypher, such as a node joined to another node by a relationship. is introduced before you use it. Familiarity with SQL concepts helps, because the workshop repeatedly contrasts the graph model with tables, foreign keys, and join tables — but each modeling decision is also explained from first principles.

  • What you'll do

    This is a build-along workshop, not a lecture. You start with an empty Neo4j database and a set of Northwind CSV files, and you finish with a connected graph and a recommendation query running against it.

    Along the way you make the same decisions you would make on a real project. You identify which columns become Full definition for node (opens in a new tab)A vertex in a graph. In a property graph it can carry labels and properties. and which become Full definition for property (opens in a new tab)A named value stored on a node or a relationship., use the Neo4j Import tool to load products, customers, and orders from CSV files, and create Full definition for relationship (opens in a new tab)A named, directed connection between two nodes. Every relationship has a type, a start node and an end node. such as PLACED, CONTAINS, and IN_CATEGORY to replace foreign keys and join tables with direct links. You then write Full definition for Cypher (opens in a new tab)Neo4j's implementation of GQL, the ISO standard query language for graph databases. It is declarative: you describe the pattern to find, and the database decides how to find it. queries that Full definition for traversal (opens in a new tab)Following relationships from one node to the next to reach other parts of a graph. those relationships across multiple hops, culminating in a collaborative filtering query that recommends products based on the buying habits of similar customers. You also spend a lesson designing a Full definition for data model (opens in a new tab)The labels, relationship types and properties chosen to represent a domain. in conversation with an AI assistant, practising how to reason about modeling choices before committing to them.

  • Where to go next

    After the workshop, Graph Data Modeling Fundamentals deepens the modeling instincts you developed here, Importing Data Fundamentals expands on the import workflow, and Cypher Fundamentals gives your query skills a thorough grounding. If you enjoyed the format, browse the other instructor-led sessions on the workshops page.