Environment Setup

Preparing your development environment

To prepare your development environment you must:

  1. Set up Neo4j Desktop on your system.

  2. Install the APOC and GDSL plugin libraries for your database.

  3. Install the Graph Data Science Playground (NEuler).

  4. Start the database and the Graph Data Science Playground.

  5. Load some data into your database you will use for the hands-on exercises.

Step 1: Set up Neo4j Desktop on your system

To perform the exercises of this course you must have downloaded and installed Neo4j Desktop on your system.

These videos show how to install and get started using Neo4j Desktop. For your environment you should:

  1. Download the latest version of Neo4j Desktop.

  2. Create a project in Neo4j Desktop named Graph Algos.

  3. Create a local 4.1.x database in this Graph Algos project.

Example 1. If using OS X
Example 2. If using Linux
Example 3. If using Windows

Step 2: Install APOC and GDSL for your database

  1. Click the Manage area for the database.

  2. Select the Plugins tab.

  3. Install the APOC plugin.

  4. Install the Graph Data Science plugin.

APOC and GDSL installed

Step 3: Install Graph Data Science Playground (NEuler)

local and global graph analytics

NEuler is a project of Neo4j Labs and is an excellent way to explore smaller graphs.

  1. Open the Graph Apps pane in the left panel.

  2. Double-click Graph Apps Gallery, a new window opens.

  3. Click the link for the Graph Data Science Playground install as shown here:

Graph Data Science Playground Install
  1. A new browser tab should open for this address.

  2. Copy this address to your clipboard. It should be: https://neo.jfrog.io/neo/api/npm/npm/neuler.

  3. In the left Graph Apps panel, paste this address in the Install field at the bottom.

  4. Click Install.

  5. The Graph Data Science Graph Playground Graph App should now appear in the left pane.

Datasets you will use in this course

  • Game of Thrones (GOT)

  • European Roads

  • Recipes

Game of Thrones

Game of Thrones

The Game of Thrones network is a monopartite graph containing Character nodes and their interactions in the TV shows. Interactions between characters are grouped by TV shows seasons. For example, a relationship INTERACTS_SEASON1 represents an interaction between characters in the first season, INTERACTS_SEASON2 means interaction in the second season, and so on. The relationship weight represents the strength of the interaction, and because two characters can interact in more than a single season, we are dealing with a weighted multigraph.

European Roads

European Roads

The European Roads network is also a monopartite graph containing Place nodes and their road connections indicated by the EROAD relationship. The Place node has multiple properties, name and countryCode. The EROAD relationship has four properties, distance, inverse_distance, road_number, and watercrossing. We will assume that we can traverse each EROAD relationship in both directions, effectively treating the European Roads network as an undirected graph.

Recipes

recipe

The Recipes network is a bipartite graph containing Recipe and Ingredient nodes. A CONTAINS_INGREDIENT relationships indicates that an ingredient was used in the particular recipe. This is a very simple data model where each node has only a name and there are no properties in the relationships.

Step 4: Start the database and Graph Data Science Playground

  1. In Neo4j Desktop, start the database.

  2. Start the Graph Data Science Graph Playground Graph App:

    1. Double-click Graph Data Science Graph Playground app in the left pane to start it.

    2. Once started, it should open a new window as follows:

Graph Data Science Playground Started

Step 5: Load the data for the exercises

Open Neo4j Browser for the started database. In the query edit pane of Neo4j Browser, execute the browser command:

:play 4.0-intro-graph-algos-exercises

and follow the instructions for Load the Data for the Exercises.

Estimated time to complete: 10 minutes.

Check your understanding

Question 1

What labels could we use to describe the Recipes network?

Select the correct answers.

  • Food

  • Ingredient

  • Recipe

  • Category

Question 2

What libraries do you use to perform analyses for Graph Data Science?

Select the correct answers.

  • GDSL

  • Graph Explorer

  • NEuler

  • APOC

Question 3

What Graph app do you use to help you run graph algorithms?

Select the correct answer.

  • Bloom

  • Cypher-shell

  • Graph Data Science Playground

  • Linkurious

Summary

You have now prepared your system for performing the hands-on exercises for this course.