Environment Setup

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:

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.

Step 3: Install Graph Data Science Playground (NEuler)

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:

1. A new browser tab should open for this address.

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)

• Recipes

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.

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

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:

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

 Estimated time to complete: 10 minutes.

Question 1

What labels could we use to describe the Recipes network?

• Food

• Ingredient

• Recipe

• Category

Question 2

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

• GDSL

• Graph Explorer

• NEuler

• APOC

Question 3

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