This Week in Neo4j – SDN-RX, Kafka, Bloom, Flight Search, Visualizing with GraphXR, Music Connections, Graph Versioning


Hello my fellow graph fans,

We’re almost at winter solstice and all the other celebrations commencing these weeks. To give you some material to have fun with during that time, this weeks issue is pretty packed.

In this week’s video from the NODES 2019 conference, Gerrit Meyer introduces the all new Spring Data Neo4j RX which uses the reactive driver architecture of Neo4j 4.0.

Jennifer published a guide on Bloom, we see breast cancer data visualized, the GraphXR folks have more training material. I really enjoyed Joe Depeaus article on matching music interests with our CEO.

Rik was very active and has published a new podcast, part 4 of the Carrefour analysis and an email analysis series.

Lots of fun stuff to read through,

Enjoy the time off if you have it!

Michael Hunger, and the Developer Relations team

michael sydney

This week’s featured Neo4j Community member is Robin Moffatt the awesome developer advocate from Confluent, original creators of Apache Kafka. Robin’s talks are always a treat, if you get the opportunity to see him live make sure to do so. On his blog he not only covers Kafka related topics but also life lessons for developers (advocates).

I met him the first time in 2018 in Cracow, PL at the CoreDump conference, co-organized by my colleague Jarek Palka. Robins and my paths have crossed several times since, even presenting together in the Kafka+Neo4j meetup in Berlin.

Robin Moffatt - This Week’s Featured Community Member

Robin Moffatt – This Week’s Featured Community Member

As part of his quest to bring the power of data streams to the world he has frequently used Neo4j and our Kafka-Integration as an example. Robin has covered graph topics from fraud detection, railroad lines and most recently syslog attack vectors.

Thanks a lot for your relentless work Robin, hope you have some relaxing time at home now.

NODES 2019: All-new SDN-RX: Reactive Spring Data Neo4j


In this week’s video from the NODES 2019, Gerrit Meier introduces the all-new reactive variant of Spring Data Neo4j.



Starting with version 4.0 Neo4j will support the reactive programming model. To provide this feature for the Spring (Data) community, we decided to re-create Spring Data Neo4j from scratch purely based on the newest Java Driver and the Spring framework. With this foundation you can expect an even better support for mapping of your business domain in the Spring ecosystem.

Graph Algorithms Release: K1 Coloring, Modularity Optimisation, Node Similarity


Alicia Frame released version 3.5.13.0 of the Neo4j Graph Algorithms Library for the Graph Data Science team.

This release contains quite some goodies. K1-Coloring is a color mechanism that’s also used in geographic maps. The goal is to assign as few node colors so that each neighbour has a different color.

The node similarity algorithm is an optimized version of Jaccard, which works on neighborhood structures, i.e. how similar is a node to it’s 2nd degree neighbours based on shared intermediate nodes.

There are optimizations for Louvain modularity, especially around parallelization.

The graph loader now supports multiple nodes and some preview functionality for the upcoming Graph Data Science 1.0 which the team is currently working on.

Bloom Guide, Graphistana, Flight Search, GraphXR


Make small talk with your boss – graph based music recommendations


An article I enjoyed a lot this week is from Joe Depeau the owner of Armstrong from our London office.

In his very entertaining style he describes his attempt of figuring out which music interests he would share with his boss Emil Eifrem and how they would overlap. To determine that, he imported parts of the large crowdsourced MusicBrainz database into Neo4j. Then he used his own and Emils interests – acquired through some detective social media investigation – to see where there are interesting connections.

Keeping track of graph changes using temporal versioning


My colleauge Lju Lazarevic gave a talk at NODES 2019 about the different means to represent time and versions in Neo4j.

In this article you find the essence of the talk explained in detail. She goes over reasons for versioning and use-cases for instance tracking changes in IAM, Infrastructure or Social networks. There are different ways to achieve this, from manual modeling of state and version nodes to using community projects like Versioner-core. In a number of examples she highlights the implications of the approaches and possible things to watch out for.

Tweet of the Week


My favourite tweet this week was also by Robin Moffatt posting about his love for Cypher 🙂

I wish you all a enjoyable time in the next 2 weeks, hopefully with your families and loved ones.

Happy Winter Solstice, Christmas, Hanukkah, or whichever celebration you enjoy at the change of the year.

In the next year you will see even more developer goodness from Neo4j, I’m super excited about the prospect.

Next week we will skip this newsletter, we’re back in the new year.

Cheers, Michael