Brussels / 1 & 2 February 2020

schedule

Graffiti

A historical, distributed graph engine


Graffiti is the graph engine of Skydive - an open source networking analysis tool. Graffiti was created from scratch to provide the features required by Skydive : distributed, replicated, store the whole history of the graph, allow subcribing to events on the graph using WebSocket and visualization.

Skydive (https://skydive.network) is an open source analysis tool. It collects information about an infrastructure topology - such as network interfaces, Linux bridges, network namespaces, containers, virtual machines, ... and store them into a graph database called Graffiti (https://github.com/skydive-project/skydive/tree/master/graffiti)

The graph is :

- distributed : some agents only have a portion of the graph
- replicated : for high availability and load distribution
- historical : every change on the graph is archived, allowing retrieval of the graph at any point in time or getting all the revisions of a set of nodes and edges during a period of time

A custom implementation of the Gremlin language is used to query the graph, with some additional steps to specify the time context of the query for instance.

In addition to the core engine, a WebSocket based user interface - based on D3JS - is available to visualize and interact with the graph.

This presentation will showcase a demo of Graffiti and try to advocate its use in your own project.

Speakers

Photo of Sylvain Baubeau Sylvain Baubeau

Links