This Week in Neo4j – Linear Regression on Neo4j, GraphQL for database admin, Bloom on World Cup Graph


Welcome to this week in Neo4j where we round up what’s been happening in the world of graph databases in the last 7 days.

This week we have a procedures library for running linear regression on Neo4j, the Yen’s k-shortest path algorithm, using GraphQL for database administration, exploring the World Cup with Neo4j Bloom, and more!


This week’s featured community member is Alicia Powers, Founder at Heart Metrics, Inc.

Alicia Powers - This Week’s Featured Community Member

Alicia Powers – This Week’s Featured Community Member

Alicia has been part of the Neo4j community for several years and presented a popular talk at GraphConnect EU 2016 titled Who Cares What Beyonce Ate for Lunch?.

Alicia was also interviewed about her work and opinions on the future of graph databases at GraphConnect 2017 in New York.

On behalf of the Neo4j community, thanks for all your work Alicia!

Graphs and ML: Linear Regression?


In Graphs and ML: Linear Regression? my colleague Lauren Shin describes a set of user-defined procedures that she implemented to create a linear regression model in Neo4j.

Lauren goes on to demonstrate the use of linear regression from the Neo4j browser to suggest prices for short term rentals in Austin, Texas.

You can download the ml-models library containing these procedures from the GitHub releases page.

Analysing the World Cup with Cypher, GraphQL, and Neo4j Bloom


In this week’s online meetup Jesus Barrasa and I showed how to query the World Cup 2018 Graph with 3 different tools: Cypher, GraphQL, and Neo4j Bloom.



It was quite a fun experience trying to work out which tool worked best for which type of queries. If you want to learn more about the World Cup Graph you can read the blog post, all the code is in the neo4j-world-cup repository, and the slides from the talk are also available.

Graph Algorithms: Yen’s k-shortest path


He starts by showing how to find the shortest path between two places using Dijkstra algorithm’s and then goes on to demonstrate Yen’s k-shortest paths algorithm which allows us to get the 2nd shortest path, 3rd shortest path, and so on.

This algorithm is very handy in the transport domain where we might want to find alternative routes if there’s a problem with the shortest one.

Procedures in Kotlin, SQL Server, GraphQL for database admin


YouTube: Neo4j APOC Series and Intro to Graph Databases


Michael started the Neo4j APOC HowTo Series of YouTube videos designed to help get you quickly up to speed with the indispensible procedures library.

So far 2 videos have been released – User Defined Procedures & Functions and APOC Introduction and Installation Desktop & Sandbox Neo4j – and there are many more to come!

Ryan continues the popular Intro to Graph Databases YouTube series with a video going into more detail about the Cypher query language.

Don’t forget to subscribe to the Neo4j YouTube channel to be notified when new videos are released in both series.

Preserving the Neo4j pagecache across database restarts


While browsing the Neo4j Knowledge base I came across an entry explaining a 3.4 feature that I didn’t even know about!

3.4 has a new active page cache warmup feature in the Enterprise Edition. The memory contents of the Neo4j page cache are periodically profiled, and these profiles are used to quickly reheat the cache on startup. This decreases the time-to-performance for restarts or crashes.

Our customer success team have written a knowledge base article explaining this feature in more detail.

Tweet of the Week


My favourite tweet this week was by Chirag Maliwal:

Don’t forget to RT if you liked it too.

That’s all for this week. Have a great weekend!

Cheers, Mark