Work in progress: Graph views using the example of Neo4j

Some time has passed since my last blog post. Because of that, I want to share a little bit about the current project I am working on. My current project (also my thesis project, thus i can’t reveal everything just now) revolves around views in graph databases and Neo4j in particular.

Views are a very popular feature of relational database management systems. Graph databases like Neo4j don’t have a similar concept as of yet. But for multiple reasons views would be a desirable feature for graphs. My thesis discusses how graph views and virtual entities may fit into the Cypher query language and how they could be implemented into Neo4j.


HackZurich 2016

So I attended Europe’s biggest hackathon, HackZurich 2016. Let me share some thoughts about this equally fun and exhausting adventure and the project that we did. Even though some of the remarks might sound negative, the whole hackathon was a lot of fun. If I get the chance to, I would gladly repeat it.

About the hackathon

HackZurich took place at Technopark (what a great name!) in Zurich (CH). Like any hackathon it was (obviously) about working on a new project for (as much as you could last of) 40 hours and meeting some companies along the way. Continue reading

Parallel Graph Algorithms in Neo4j

Recently I was interviewed for the wonderful Graphistania Podcast. I got to talk about my previous work with Neo4j and the Diplom thesis (master equivalent) i am currently writing. The prior work was my student research project (“Großer Beleg”; think about it like a smaller master thesis) about “Parallel Graph Algorithms in Neo4j”. I gave a (preview) talk about it at a Graph Database Meetup in December of 2015 and finished my work on this years 29th of April 😀 . Since then, the guys at Neo Technology didn’t stay idle and released Neo4j version 3.0 which made some of my work a little bit outdated. Mainly because i would have loved to integrate user defined procedures. Some of my code i contributed to the Awesome Procedures On Cypher (APOC) repository (hopefully I can find the time to provide more of it in the future).

Nonetheless, I wanted to “publish” my work here, in case someone wants to learn about parallel graph algorithms like Random Walk and Connected Components and how you can easily integrate them into the Neo4j server. It can be found here. Please note that it is fully written in German and that it is my first real scientific work. The corresponding repository can be found here.

If you are planning on using Neo4j’s Kernel API to create the fastest possible extensions/procedures for your server, i recommend you give it a try. But since i made the mistake to write it in German, I will try to extract the relevant parts into future blog posts in English.