
A personal welcome to the course.
Discover how Neo4j graphs model interconnected data and simplify complex queries, learn to install Neo4j browser, populate your database, and perform Cypher queries for create, read, update, and delete data.
Define a graph as a collection of nodes and relationships. Label nodes, direct relationships by type and direction, and use properties to identify nodes and support self-relations or multiple connections.
Define properties as key-value pairs on nodes or relationships, storing names, locations, dates, coordinates, and other simple types; learn about lists, point types including four types, and optional schema constraints.
What does Neo4j and its query language look like?
In this Lecture we'll use the Neo4j Sandbox "Recommendations" dataset to explore and get a taste for what it's like to work with Neo4j.
In this video we compare Neo4j Community, Neo4j Aura, and Neo4j Enterprise editions.
Exploring the Neo4j Desktop command bar
A brief conversation about what Neo4j Bloom is and how it may be helpful
Overview of Neo4j Browser - part 1
Going over the frames, and some of the features they provide
Overview of Neo4j Browser - part 2
Exploring favourites and the sidebar menu
Exploring the built-in help functionality
We take a look at the System Database, and show how to create and drop databases in Neo4j Enterprise edition
Import the create course data script into Neo4j, save it as a favorite, delete all data, and load the baseline course data to initialize each lecture.
Demonstrate matching relationships in Cypher using patterns of nodes and relationships, returning nodes and optionally rel, with direction, ACTED_IN, Person and Movie labels, and OR with pipe.
Explore transitive contacts in Neo4j by traversing the has_contact relationships to print the names of person A, B, and C, and limit results to one using the Neo4j browser.
Filter by properties teaches you to narrow search results by node and relationship properties, use labels to refine matches, and perform multi-property exact, case-sensitive filters.
Learn to filter nodes with the where clause in cypher using tom.name equals 'Tom Hanks' and tom.born equals 1956, replacing match-only filters and enabling future use of comparison operators.
Explore comparison operators in the where clause, including =, <>, <, <=, >, >=, and apply them to text and numeric properties to filter by names and birth years.
Explore boolean operators in Cypher to refine queries with and, or, in, and not, enabling complex filtering by birth year and range criteria.
Use boolean operators on paths within where clauses to find people involved in a movie like Unforgiven who did not direct it, by applying and not with the directed relation.
Learn to use regular expressions in cypher to match text patterns in movie titles, including the starting 'the', dot and star for any trailing chars, and case-insensitive searches with (?i).
Transform and order Neo4j query results by earnings using order by, limit, skip, and as, illustrated with actors and their earnings in Top Gun.
Find Tom Hanks actor contacts born in 1960 or later who earned over ten million dollars from a single movie, and return their name, birth year, and earnings.
Query a graph database to find Tom Hanks' actor contacts born in 1960 or later who earned more than 10 million from a movie, returning name, birth year, and earnings.
Learn how to remove duplicate results with the distinct keyword by aggregating query results that span actors and earnings in movies, returning unique actor names.
Explore Cypher math functions, including floor, ceil, round, and haversin for spherical distances, and learn practical usage with an example computing average earnings from ACTED_IN relationships.
Identify the top earning actor by computing the highest average earnings per movie using the ACTED_IN relationship. Return the actor's name in uppercase and the rounded average.
Create a Cat node named fluffy and a GROOMS relationship to itself with a daily period property. Learn how to add properties to relationships and create relationships to existing nodes.
Add the movie 'The Hateful 8' to the movie database and include its director 'Quentin Tarantino', then try it out.
Clear the database, verify no existing 'The Hateful Eight' or 'Quentin Tarantino' using case-insensitive searches, then create the movie and director nodes and link them with a directed relationship.
Add Zoe Bell, a New Zealand actress born in 1978, to the graph database as Quentin Tarantino's contact and The Hateful Eight star, earning one million dollars.
Create Zoe Bell in cypher, connect her to Quentin Tarantino as a contact and to the movie The Hateful Eight via ACTED_IN, including earnings on the relationship.
Learn to delete nodes and relationships in Neo4j by matching all nodes, deleting related relationships first, then deleting any remaining nodes, with repopulation to illustrate alternatives.
Replicate a clean database, create a test node with a deleted property set to true, and apply optional match and detach delete to remove nodes and relationships.
Delete all has_contact relationships to Tom Hanks, then match and return Tom Hanks to verify no has_contact relationships remain.
Remove the Da Vinci Code movie node from the graph while preserving all connected actors and directors, demonstrating node deletion without losing related entities in Neo4j.
Revert the work from the previous exercise by removing the 'Rich' label and the 'total_earnings' property on those actors.
Remove the Rich label and total_earnings property from actors who also have the Person label, and verify the changes across nodes and query results.
Master null gotchas in Cypher by testing with is null and is not null. Learn to handle nulls in lists and use with to return non-null addresses.
Use MERGE with ON CREATE SET and ON MATCH SET to manage node properties, updating created_at, created_by on create and updated_at on matches, and incrementing update_count on each update.
Learn to model a viewed relationship in Neo4j between Keanu Reeves and the Top Gun movie, using a count that initializes on create and increments on each run.
Learn how some of the worlds top tech companies structure and query their data - using graph databases.
Through a series of tutorials, this course takes you through the fundamentals of using Neo4j - the world's leading Graph Database, and its query language Cypher. You'll learn graph database concepts, and gain practical skills in using Neo4j.
By the end of the course, you'll be able to confidently run numerous queries, and understand what a graph database is.
Here's an outline of what you'll learn in the course:
In addition to learning the basics of Neo4j, you'll find a number of video exercises that help you practice everything you learn along the way.
If you've ever wondered What's the best graph database? or How do Graph Databases compare to SQL databases? then you really can't go wrong with Neo4j. Voker Pacher, a senior developer at Ebay has been quoted as saying:
"We found Neo4j to be literally thousands of times faster than our prior MySQL solution, with queries that require 10 to 100 times less code. Today Neo4j provides Ebay with functionality that was previously impossible"
Neo4j as ranked by site db-engines, is also the most popular of all graph databases on the market today.
So if you're looking at progressing your career, keeping up with the latest in database technology, and gaining a new skill in a simple, easy to understand, yet powerful way then you should take this course.