Graph Systems and Algorithms

Graffiti

A historical, distributed graph engine
AW1.121
Sylvain Baubeau
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.

Additional information

Type devroom

More sessions

2/1/20
Graph Systems and Algorithms
Vincent Cave
AW1.121
Python has proven to be a popular choice for data scientists in the domain of graph analytics. The multitude of freely available frameworks and python packages allow to develop applications quickly through ease of expressibility and reuse of code. With petabytes of data generated everyday and an ever evolving landscape of hardware solutions, we observe a graph processing framework should expose the following characteristics: ease of use, scalability, interoperability across data formats, and ...
2/1/20
Graph Systems and Algorithms
Max Kießling
AW1.121
Graph algorithms play an increasingly important role in real-world applications. The Neo4j Graph Algorithms library contains a set of ~50 graph algorithms covering a lot of different problem domains. In our talk, we’ll present the architecture of the library and demonstrate the different execution phases using a real world example.
2/1/20
Graph Systems and Algorithms
Muhammad Osama
AW1.121
Gunrock is a CUDA library for graph-processing designed specifically for the GPU. It uses a high-level, bulk-synchronous, data-centric abstraction focused on operations on vertex or edge frontiers. Gunrock achieves a balance between performance and expressiveness by coupling high-performance GPU computing primitives and optimization strategies, particularly in the area of fine-grained load balancing, with a high-level programming model that allows programmers to quickly develop new graph ...
2/1/20
Graph Systems and Algorithms
AW1.121
Graph databases and applications have attracted much attention in the past few years due to the efficiency with which they can represent big data, connecting different layers of data structures and allowing analysis while preserving contextual relationships. This has resulted in a fast-growing community that has been developing various database and algorithmic innovations in this area, many of which will be gathering together in this conference. We joined this field as computer architecture ...
2/1/20
Graph Systems and Algorithms
Stijn Eyerman
AW1.121
Large scale graph analytics is essential to analyze relationships in big data sets. Thereto, the DARPA HIVE program targets a leap in power efficient graph analytics. In response to this program, Intel proposes the Programmable Unified Memory Architecture (PUMA). Based on graph workload analysis insights, PUMA consists of many multi-threaded cores, fine-grained memory and network accesses, a globally shared address space and powerful offload engines. In this talk, we will describe the PUMA ...
2/1/20
Graph Systems and Algorithms
AW1.121
In this talk we will introduce enhancements to the Cypher graph query language, enabling queries spanning multiple graphs, intended for use in sharding and federation scenarios. We will also present our experience with sharding the LDBC Social Network Benchmark dataset.
2/1/20
Graph Systems and Algorithms
Ben Steer
AW1.121
Temporal graphs capture the development of relationships within data throughout time. This model fits naturally within a streaming architecture, where new events can be inserted directly into the graph upon arrival from a data source, being compared to related entities or historical state. However, the vast majority of graph processing systems only consider traditional graph analysis on static data, with some outliers supporting batched updating and temporal analysis across graph snapshots. This ...