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.
But before we begin, a quick announcement from us, the Neo4j Developer Relations team.
Developer Zone at GraphConnect Europe 2017
To provide the best developer experience at our GraphConnect conference in London, on May 11th 2017, we will open a dedicated Developer Zone.
We will all be joined by Neo4j engineers, eager to answer your questions and talk about cool stuff you can do with Neo4j.
Featured Community Member: Michael Moussa
This week’s featured community member – Michael Moussa
He’s also contributed to PHP related projects in the Neo4j community and answered questions in our open channels.
Last few days of APOC Awareness Month
We’re in the last days of the APOC Awareness Month so if you haven’t published your article, you have until Monday evening (May 1st might be a good day off to work on this).
This week Alessio di Angelis won his prize by publishing a really cool piece about importing and routing OpenStreetMap data using APOC.
Tomaz Bratanic continued his APOC algorithm series and wrote this time about similarities, cluster finding and visualizing them with virtual nodes and relationships. A very interesting read!
Python, PyData, Flask, NeoModel, and Neo4j
Mostafa Moradian published gRest, a quickstart repository to build applications with Python, Flask, and NeoModel – a Django-like OGM for Neo4j.
The GraphConnect schedule is a graph
The GraphConnect Europe 2017 Schedule
GraphConnect is no exception and you can now view the schedule as a graph.
Wikipedia Knowledge Graph, GraphQL, Causal Clustering
- As a follow up to last week’s online meetup my colleague Jesús Barrasa published a blog post explaining how to create the Wikipedia Knowledge Graph in Neo4j. He loads pages and categories and enriches them by querying dbpedia. You can follow along by running the Neo4j-Browser Guide Jesús created in the blank Neo4j Sandbox.
- Rik also published parts 2 , 3, and 4 of his series of explaining common questions about Neo4j. You get very detailed answers on the questions of scale, usage of Lucene, Solr and transactions and the Gremlin support of Neo4j.
- If you love to extend Neo4j you will like this article by Igor Borojevic, who shows as part of the security series with Neo4j how to build a custom security plugin, to chose your own way of doing Authentication and authorization
- Chris Skardon explains step by step how to manually set up a causal cluster with Neo4 3.1.3 on Microsoft Azure. Enjoy his funny observations and comments in his blog post: So you want to go Causal Neo4j in Azure? Sure we can do that
- Magnus Wallberg wrote up the PhUSE conference where he attended a workshop led by Tim Williams comparing RDF and graphs.
- If you’re looking for a job where you can work with Neo4j full time, Matt Andrews at the Financial Times is hiring:
Looking for front end / full stack contractors to join Nikkei-FT project in London! If you like Node, Neo4J &/or ElasticSearch get in touch!— Matt Andrews (@andrewsmatt) April 26, 2017
The Mattermark GraphQL API Graph
GraphQL has been on our minds, lately. So, when the Mattermark GraphQL API became available, Will Lyon looked into it and created this insightful blog post on analysing local startup ecosystems based on their data.
He uses ApolloClient to access the API and turn the data of startups based in his home state of Montana into a graph in Neo4j.
Will then goes on to use Cypher queries to answer questions such as:
- What are the companies in Montana that are raising venture capital?
- Who are the founders?
- Who is funding them and what industries are they in?_
Online Meetup: Learning Chinese with Neo4j
In this week’s online meetup Fernando Izquierdo showed us how to learn Chinese using Neo4j.
Even if you’ve got no interest in learning Chinese this is still worth watching because it’s such an innovative use of graphs.
From The Knowledge Base
This week from the Neo4j Knowledge Base:
- How do I quickly identify long gc pauses via the messages or debug logs supplies a simple set of commands to quickly analyse Neo4j log files.
- The article for Limiting MATCH results per row was recently extended with pattern comprehensions for Neo4j 3.1
On GitHub: Rust, Spring Data Neo4j, The Bible
Here are some of the most interesting projects I found on my GitHub travels:
- If you like to work in Rust, this Crate can help you to access Neo4j natively. It uses Cypher via the HTTP protocol and is well documented in the readme. It even offers a Macro based approach for less clutter in your code.
- Marco Falcier created a quick Spring Data Neo4j example project for managing forests of trees, that gives you a good starting point. It runs on a temporary in-memory database and comes with an Angular frontend and provides Mockito based tests.
- The MetaV viz.bible is an online and mobile site publishing detailed connections between bible verses and provides a lot of insights and charts. Olin Blodgett took the CSV data which is available under a CC license and transforms it into a graph in Neo4j. You can also see the underlying data model and some example queries. Would be interesting to build an app on top of that graph data which could augment viz.bible with deeper insights based on graph queries and analytics.
- If you are into life-sciences research and want to work with Snomed data in Neo4j, Pradeep created a Docker based workflow using the official containers for Neo4j and Snomed and a Groovy script to load the data into a graph.
Tweet of the Week
My favorite tweet this week was by Christos Delivorias:
That’s all for this week. Have a great weekend.
Cheers, Michael & Mark
About the Author
Michael Hunger & Mark Needham , Neo4j Developer Relations & Engineering
Michael Hunger has been passionate about software development for a very long time. For the last few years he has been working with the Neo4j team, filling a variety of roles. As caretaker of the Neo4j community and ecosystem, he especially loves to work with graph-related projects, users and contributors. As a developer, Michael enjoys many aspects of programming languages, learning new things every day, participating in exciting and ambitious open source projects and contributing and writing software-related books and articles.