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!
Featured Community Member: Alicia Powers
This week’s featured community member is Alicia Powers, Founder at Heart Metrics, Inc.
Alicia Powers – This Week’s Featured Community Member
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.
Graph Algorithms: Yen’s k-shortest path
In Tomaz Bratanic’s latest post he shows how to find alternative routes in the California road network using Neo4j Graph Algorithms.
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
- Emad Panah explains how it took only 20 minutes to create a Neo4j Procedure that converts a string to SHA256 Hash using the Kotlin programming language.
- Michael wrote a post explaining how to use a GraphQL API for database administration. In the post he explains how to expose all available procedures either as GraphQL queries or mutations.
- Sinister China Penguin wanted to connect SQL Server and Neo4j and explains how to do this using a combination of the Neo4j HTTP API & PowerShell.
- Neo4j 3.4.1 community is now available for you to install from the AWS marketplace.
- We also had an online meetup last week but it just missed the cut for last week’s TWIN4j. Our friends at Menome Technologies explained how they’ve been combining the gensim text analytics library with Neo4j to make sense of text data.
YouTube: Neo4j APOC Series and Intro to Graph Databases
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!
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:
some months ago on one of my projects we got an idea that migrating to Neo4j would be great, cause we having data that would be ideal for graph. After that, life changed forever.— chirag maliwal (@chiragmaliwal3) June 24, 2018
I think Neo4j is like Magic.
THanks @neo4j for the great graph database.
Don’t forget to RT if you liked it too.
That’s all for this week. Have a great weekend!
About the Author
Mark Needham , Developer Relations Engineer
Mark Needham is a graph advocate and developer relations engineer at Neo4j.
As a developer relations engineer, Mark helps users embrace graph data and Neo4j, building sophisticated solutions to challenging data problems. Mark previously worked in engineering on the clustering team, helping to build the Causal Clustering feature released in Neo4j 3.1. Mark writes about his experiences of being a graphista on a popular blog at markhneedham.com. He tweets at @markhneedham.