Glossary

Definitions of the graph, Cypher, data science, GenAI and driver terms used across Neo4j GraphAcademy, each linked to the lessons that teach it.

Aura

Aura
Neo4j's fully managed cloud service.108 lessons
Aura Graph Analytics
The Aura service that runs graph algorithms in a separate session, with no plugin to install.21 lessons
Aura Graph Analytics session
A managed, temporary compute environment that holds a projection and runs algorithms against it.6 lessons
Aura instance
A single Neo4j database running in Aura.37 lessons
AuraDB
The Aura product for transactional workloads.45 lessons
AuraDS
The Aura product for data science workloads, with the Graph Data Science library installed.8 lessons
implicit session
An Aura Graph Analytics session created together with its projection, in a single call.2 lessons
standalone session
An Aura Graph Analytics session attached to no AuraDB instance, projecting instead from data you supply.1 lesson

Cypher

aggregation
Grouping rows and computing a value over each group. In Cypher the grouping keys are whatever expressions in the same clause are not aggregated.19 lessons
constraint
A rule the database enforces on every node or relationship with a given label or type, rejecting any write that breaks it.66 lessons
Cypher
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.351 lessons
index
A structure over a property. The database reads it to find nodes or relationships by property value, rather than scanning every one.109 lessons
pattern
A graph structure written in Cypher, such as a node joined to another node by a relationship.171 lessons
pattern matching
Finding every part of the graph that fits a given pattern.4 lessons
unique constraint
A constraint that permits only one node or relationship with a given property value for its label or type.9 lessons

Data modeling

data model
The labels, relationship types and properties chosen to represent a domain.92 lessons
instance model
A data model drawn with real example data, showing particular nodes and relationships rather than their types.24 lessons
intermediate node
A node introduced to act as an intermediate step between two or more other nodes, or to carry properties that a single relationship cannot.3 lessons
refactoring
Changing the structure of a graph without changing what it represents, usually to make queries simpler, faster or more logical.17 lessons

Drivers

driver
The client library an application uses to connect to Neo4j and run Cypher.88 lessons
read transaction
A transaction that only reads, and so can be routed to any member of a cluster.2 lessons
transaction
A unit of work that either succeeds in full or leaves no trace.71 lessons
transaction function
A function the driver runs inside a transaction it manages, retrying it when a failure was transient.7 lessons
write transaction
A transaction that changes data, and so is routed to the leader of a cluster.2 lessons

GenAI and GraphRAG

embedding
Information represented as a numerical vector, positioned so that similar information sits close together.72 lessons
generative AI
Models that produce new content rather than classifying or scoring content that already exists.25 lessons
GraphRAG
Retrieval-augmented generation whose context comes from a knowledge graph, so the model can follow the relationships between facts.44 lessons
hallucination
A false statement made confidently by a language model.6 lessons
knowledge graph
A graph of entities and the relationships between them, used as a source of facts.71 lessons
large language model
A model trained on text to predict the next token, and so to generate language.96 lessons
prompt
The text given to a language model to produce a response.73 lessons
retrieval-augmented generation
Fetching relevant context from an external data source as additional context to inform a language model's response.15 lessons
retriever
A component that searches a data source and returns the information relevant to a query. Often used to provide context for a language model.30 lessons
temperature
A number that sets how strongly a language model favours its highest-scoring next word. Low values keep it on the favourite, high values make it more likely to choose from words with lower scores.2 lessons
text chunk
A piece of a larger document, small enough for a model to process and specific enough to be worth retrieving on its own.39 lessons
vector
An ordered list of numbers. Distance between two vectors measures how alike the things they represent are.70 lessons
vector index
A structure over a vector property. The database searches it to find the vectors nearest a given one, rather than comparing every vector stored.29 lessons
vector search
Finding the records whose vectors lie closest to a query vector.21 lessons

Graph Data Science

betweenness centrality
A score for each node equal to how often it lies on the shortest paths between other nodes.9 lessons
centrality
How important a node is within a graph. Each centrality algorithm defines importance differently.20 lessons
community detection
A family of algorithms that group nodes by how they connect. Each algorithm defines a community differently.25 lessons
Cypher projection
A projection built from the rows a Cypher query returns, so it can hold nodes and relationships that are derived rather than stored.13 lessons
degree centrality
A score for each node equal to its number of outgoing relationships.23 lessons
Dijkstra's algorithm
An algorithm that finds the cheapest route between two nodes.12 lessons
execution mode
How a GDS algorithm returns its results. One of stats, stream, mutate, write or estimate.8 lessons
FastRP
A node embedding algorithm, short for Fast Random Projection. It builds each node's vector by combining random vectors drawn from the nodes around it.10 lessons
graph catalog
The set of projections currently held in memory, each listed and dropped by name.3 lessons
graph data science
Analysing data through the structure of its connections. Also the name of the Neo4j library that implements it.64 lessons
Louvain algorithm
A community detection algorithm that repeatedly merges nodes into groups for as long as merging raises modularity.25 lessons
modularity
A score for how much more densely connected the nodes within a group are than they would be by chance.9 lessons
native projection
A projection built by naming node labels and relationship types directly, without a Cypher query.6 lessons
node embedding
A list of numbers that stands in for a node's position in the graph, so that nodes in similar positions get similar lists.4 lessons
node similarity
An algorithm that scores how alike two nodes are by comparing the neighbours they share.15 lessons
PageRank
A centrality algorithm that scores a node by the number of nodes pointing at it and by how important those nodes are.30 lessons
pathfinding
A family of algorithms that find routes through a graph. What counts as the best route differs by algorithm.12 lessons
projection
An in-memory copy of part of your database that graph algorithms run against. You choose which nodes and relationships it holds.79 lessons
relationship aggregation
Collapsing the parallel relationships between two nodes into one during projection, usually carrying their count or sum as its weight.5 lessons
Union-Find
The algorithm underlying Weakly Connected Components. It holds each node in a set, and merges two sets whenever a relationship joins them.1 lesson
weakly connected components
Groups of nodes in which every node is reachable from every other, once relationship direction is ignored. The GDS algorithm that finds them takes the same name.7 lessons
Yen's algorithm
An algorithm that finds the k cheapest routes between two nodes, rather than only the cheapest.4 lessons

Graphs

bipartite graph
A graph with two kinds of node, where every relationship joins one kind to the other and never two of the same kind.27 lessons
directed relationship
A relationship that runs one way, from its start node to its end node. Every relationship Neo4j stores is directed.17 lessons
graph
A set of vertices, with edges joining pairs of them. Neo4j calls vertices nodes and edges relationships.434 lessons
heterogeneous graph
A graph that holds more than one node label or more than one relationship type.8 lessons
label
A tag on a node that groups it with other nodes of the same kind. A node can carry more than one.168 lessons
monopartite graph
A graph in which every node is the same kind of thing, so relationships connect like to like.18 lessons
multipartite graph
A graph with three or more kinds of node, where relationships only ever join nodes of different kinds.7 lessons
node
A vertex in a graph. In a property graph it can carry labels and properties.446 lessons
path
A sequence of nodes joined by relationships.62 lessons
property
A named value stored on a node or a relationship.335 lessons
property graph
The data model Neo4j implements, in which nodes and relationships both carry properties as well as labels and types.8 lessons
relationship
A named, directed connection between two nodes. Every relationship has a type, a start node and an end node.374 lessons
traversal
Following relationships from one node to the next to reach other parts of a graph.80 lessons
undirected relationship
A relationship with no direction. Neo4j GDS represents them as parallel relationships in opposite directions.21 lessons
weighted graph
A graph whose relationships carry a numeric property that algorithms and queries can read as a cost or a strength.2 lessons

Importing

Data Importer
The Neo4j tool for loading CSV files into a graph by mapping their columns onto nodes and relationships.10 lessons
LOAD CSV
The Cypher clause that reads a CSV file row by row, so those rows can be written into the graph.8 lessons