Getting Started
This guide will take you through starting a graph based on provided data.
Prerequisites
This tutorial requires you to be connected to local Cayley installation. For more information on installing Cayley locally, see Install Cayley.
Start Cayley
cayley http
You should see:
Cayley version: 0.7.7 (dev snapshot)
using backend "memstore"
listening on 127.0.0.1:64210, web interface at http://127.0.0.1:64210
You can now open the web-interface on: localhost:64210.
Cayley is configured by default to run in memory (That's what backend memstore
means). To change the configuration see the documentation for Configuration File or run cayley http --help
.
For more information about the UI see: UI Overview
Run with sample data
Download sample data
Run Cayley
cayley http --load 30kmoviedata.nq.gz
Query Data
Using the 30kmoviedata.nq dataset from above, let's walk through some simple queries:
Query all vertices in the graph
To select all vertices in the graph call, limit to 5 first results. g
and V
are synonyms for graph
and Vertex
respectively, as they are quite common.
g.V().getLimit(5);
Match a property of a vertex
Find vertex with property "Humphrey Bogart"
g.V()
.has("<name>", "Humphrey Bogart")
.all();
You may start to notice a pattern here: with Gizmo, the query lines tend to:
Start somewhere in the graph | Follow a path | Run the query with "all" or "getLimit"
Match a complex path
Get the list of actors in the film
g.V()
.has("<name>", "Casablanca")
.out("</film/film/starring>")
.out("</film/performance/actor>")
.out("<name>")
.all();
Match
This is starting to get long. Let's use a Morphism, a pre-defined path stored in a variable, as our linkage
var filmToActor = g
.Morphism()
.out("</film/film/starring>")
.out("</film/performance/actor>");
g.V()
.has("<name>", "Casablanca")
.follow(filmToActor)
.out("<name>")
.all();
To learn more about querying see Gizmo Documentation
Last updated
Was this helpful?