icon icon

Cypher Language Course and Graph Databases in Neo4j/ONgDB

icon

Training process

Training needs analysis

If you have specific requirements regarding the training programme, we will carry out a training needs analysis for you. This will guide us on which aspects of the programme should receive greater emphasis, so that the training programme meets your specific needs.

What will you gain?

icon

Graph data modeling - You will learn how to map real-world relationships into nodes, edges, and properties, so you can design a practical Neo4j or ONgDB data model for real analytical use cases.

icon

Writing CYPHER queries - You will practice CYPHER from the ground up, including data creation, filtering, sorting, and traversals, so you can build clear queries for everyday graph database work.

icon

Navigating graph structures - You will learn how to move through a graph efficiently and find links, paths, and patterns, making it easier to analyze relationships that are hard to capture in relational databases.

icon

Choosing the right algorithm - You will understand when to use BFS, DFS, Dijkstra, PageRank, and related methods, so you can match the right algorithm to routing, centrality, connectivity, or recommendation tasks.

icon

Using APOC and GDSL - You will work with APOC and GDSL libraries to run built-in procedures and graph algorithms, and read the results correctly without having to implement every method from scratch.

icon

Interpreting analytical results - You will learn how to interpret centrality, similarity, and community detection outputs, so you can turn graph algorithm metrics into clear conclusions for business or data analysis.

icon

Application integration - You will see how to connect a graph database with Java and JavaScript code, so you can execute queries from an application and use graph data in working software solutions.

icon

Real-world graph use cases - You will review examples from social networks, transport, and recommendation systems, helping you recognize when a graph database is a better fit than other data models.

Training programme

1. Introduction to graph databases using Neo4j/ONgDB as an example

In data analysis, graph databases become relevant when relationships are as important as the records themselves. This section explains the role of Neo4j/ONgDB, outlines platform architecture, and includes installation and configuration of these graph database solutions.

  • the importance of graph databases in data analysis,
  • platform architecture,
  • discussion of Neo4j/ONgDB as popular graph database solutions,
  • installation and configuration of Neo4j/ONgDB.

2. Fundamentals of the CYPHER query language

CYPHER syntax is introduced through the operations used most often in day-to-day graph database work. The section covers query structure, creating nodes and relationships, simple data retrieval, selection and filtering, data import, and traversing connected data.

  • CYPHER query structure,
  • creating nodes and relationships in a graph database,
  • simple CYPHER queries for retrieving data,
  • selection and filtering, 
  • data import, 
  • traversing the graph.

3. Graph theory

Graph theory provides the vocabulary needed to describe data as nodes, edges, and connected structures. Participants learn key concepts, distinguish directed, undirected, weighted, and labeled graphs, and relate these forms to applications across different domains.

  • basic concepts and terminology of graphs,
  • types of graphs: directed, undirected, weighted, labeled,
  • application of graphs in various fields.

4. Basic algorithms of graph data analysis – theoretical aspects

Core analytical methods provide the theoretical basis for later work with graph data. The section covers BFS, DFS, shortest-path algorithms such as Dijkstra and Bellman-Ford, minimum spanning trees, strongly connected components, PageRank, and other selected graph algorithms.

  • graphs: BFS (Breadth-First Search) and DFS (Depth-First Search),
  • shortest path: Dijkstra and Bellman-Ford,
  • minimum spanning tree: Kruskal and Prim,
  • depth-first search (DFS) and strongly connected components,
  • PageRank algorithm,
  • other graph algorithms depending on the needs and interests of the participants.

5. Fundamentals of the CYPHER query language – theory and practice in Neo4j/ONgDB

More complex CYPHER work involves combining filters, conditions, sorting, and limits into queries that answer nontrivial questions. Participants practice advanced query construction in Neo4j/ONgDB, including scenarios such as shortest path searches and other multi-step patterns.

  • advanced CYPHER queries,
  • filters, conditions, sorting and limitations in CYPHER queries,
  • creating complex CYPHER queries, such as searching for the shortest path.

6. Practical application of graph algorithms available in the APOC and GDSL libraries and interpretation of the resulting information

APOC and GDSL extend Neo4j/ONgDB with procedures and algorithms that support practical graph analysis. The section focuses on applying selected algorithms from these libraries and interpreting their outputs so results can be used correctly in further work.

  • use of the APOC and GDSL libraries in Neo4j/ONgDB,
  • practical application of graph algorithms available in the libraries,
  • interpretation of resulting information from graph algorithms.

7. Practical use of output information from graph algorithms in data analysis processes

Turning algorithm results into analytical input requires linking graph outputs with the underlying data model. Participants work with modeling data in Neo4j/ONgDB and learn how measures, scores, and detected structures can support broader data analysis processes.

  • data modeling in Neo4j/ONgDB,
  • use of output information from graph algorithms in data analysis.

8. Advanced graph analysis techniques

Beyond basic traversal, graph analysis often relies on methods that reveal structure and influence. This section addresses subgraph pattern search, centrality measures such as node and betweenness centrality, community detection, and recommendation-oriented graph algorithms.

  • pattern search algorithms in graphs (e.g. subgraph pattern),
  • determining centrality in graphs (e.g. node centrality, betweenness centrality),
  • community detection algorithms in social networks,
  • the use of graph algorithms for recommendations.

9. Graph similarity analysis

When structures need to be compared, graph similarity analysis helps identify common patterns and meaningful differences. This part focuses on measuring similarity between graphs, comparing their forms, and applying these results in data analysis tasks.

  • measuring similarity between graphs,
  • comparing graph structures and identifying similar patterns,
  • application of graph similarity analysis in data analysis.

10. Examples of practical applications of graph databases

Practical examples show where graph databases provide a natural representation of connected data. The section covers social network analysis, route and road modeling in transport systems, and dependency structures used in recommendation scenarios.

  • analysis of social networks and relationships between users,
  • modeling roads and routes in transport systems,
  • analysis of dependencies and connections in recommendation systems.

11. Introduction to the GraphQL query language in the context of graph databases

GraphQL is presented in relation to graph databases, with attention to how its query model differs from CYPHER. Participants build GraphQL queries for retrieving graph data and compare both languages in terms of structure, intent, and typical use cases.

  • comparison of CYPHER and GraphQL,
  • creating GraphQL queries to retrieve data from a graph database.

12. Case study: Data analysis in a specific domain using Neo4j/ONgDB

A domain-specific analytical scenario ties together modeling, querying, and graph algorithms in one coherent workflow. Participants examine how Neo4j/ONgDB supports data analysis in a concrete area and how graph-based methods help interpret relationships and patterns.

13. Integration with programming languages

Java and JavaScript are used here as practical contexts for connecting applications with Neo4j/ONgDB. The section shows how to work with the database from code, including executing queries and handling graph data within the application layer.

  • integration with a project in Java and JavaScript,
  • working with the database from the programming language level.

What are the prerequisites for participating in the training?

icon

Database basics - You should understand records, relationships, tables, or entities and be able to read simple database queries, so moving into the graph model will be much easier for you.

icon

Analytical thinking - You should be comfortable analyzing relationships between objects and understanding data structures, because the course covers graph modeling and interpreting algorithm outputs.

icon

Basic coding literacy - You should be able to read simple code or scripts and follow command syntax, as part of the training includes CYPHER queries and integration with Java or JavaScript.

icon

Computer environment skills - You should be comfortable using your operating system, installing tools, and launching applications, because the training includes setup and hands-on work with Neo4j or ONgDB.