background preloader


Facebook Twitter

Welcome to the Dark Side: Neo4j Worst Practices (& How to Avoid Them) By Stefan Armbruster, Field Engineer | February 24, 2016 Editor’s Note: Last October at GraphConnect San Francisco, Stefan Armbruster – Field Engineer at Neo Technology – delivered this presentation on the worst (and best) practices for using Neo4j in your particular deployment.

Welcome to the Dark Side: Neo4j Worst Practices (& How to Avoid Them)

For more videos from GraphConnect SF and to register for GraphConnect Europe, check out Oh, and one more thing if you’re reading the transcript: Remember that sarcasm and tongue-in-cheek comments don’t always translate well into the written word. I’ve tried my best to make humorous points clear, but if you’re in doubt, watch the video instead. I’ve worked for the Neo4j team for more than three years now as a field engineer, and in that period, you see all kinds of things going wrong. We’ll walk through some stories and anecdotes, but don’t be scared, as I won’t mention any customer names. Arbor.js » atlas.

Cola.js: Constraint-based Layout in the Browser. Jupyter Notebook Viewer. Thousands of Star Wars fans have contributed to Star Wars wikis like the Wookieepedia Wiki - the open Star Wars encyclopedia that anyone can edit.

Jupyter Notebook Viewer

This wiki collects information about all Star Wars films, including characters, planets, starships and much more. A subset of the information from Wookieepedia is available via REST API at SWAPI provides an API for fetching information about which characters appear in which films, the characters' home planets, and what starships they’ve piloted. Creating a Graph Application with Python, Neo4j, Gephi and Linkurious.js. Guest blog by Greg Roberts at Packt Publishing (to see this graph in its fully interactive form see I love Python, and to celebrate Packt’s Python Week, I’ve spent some time developing an app using some of my favourite tools.

Creating a Graph Application with Python, Neo4j, Gephi and Linkurious.js

The app is a graph visualisation of Python and related topics, as well as showing where all our content fits in. The topics are all StackOverflow tags, related by their co-occurrence in questions on the site. The app is available to view at and in this blog, I’m going to discuss some of the techniques I used to construct the underlying dataset, and how I turned it into an online application using some of my favourite tools.

Graphs, not charts. Neo4j_meetup7. Graph based recommendation engine for Shopware. At the end of September, Benjamin and I visited the Bulgaria PHP conference.

Graph based recommendation engine for Shopware

We saw a very interesting talk by Mariusz Gil called Discovering graph structures, which gave a quick introduction to graph databases and especially Neo4j. Over a long weekend I decided that trying to implement a recommendation engine for Shopware based on Neo4j might be a good start to get into Neo4j and graph databases in general. In this blog post I will discuss the graph database, Shopware's current way of handling recommendations and a simple plugin to implement a recommendation engine using neo4j in Shopware. What is it all about? Anchor link for: what is it all about A graph database is a database which represents information in form of graphs. Graph databases are popular everywhere meaningful information needs to be extracted from an information network.

The graph above shows a simple customer / item graph with three customers (blue) having purchased various items (green). Neo4jAnchor link for: neo4j . Shindig: Integrating Neo4j with Meteor. Shindig: Integrating Neo4j with Meteor Meteor is an isomorphic full-stack Javascript framework and its hands-down the easiest way to get started building apps.

Shindig: Integrating Neo4j with Meteor

There’s very little boilerplate and for the most part, it just works. Meteor ships with MongoDB and has all this awesome fancy stuff that reactively publishes and latency compensates the entire interaction with the database through Minimongo. But MongoDB is not a good choice for every app. Neo4j: Loading JSON documents with Cypher. One of the most commonly asked questions I get asked is how to load JSON documents into Neo4j and although Cypher doesn’t have a ‘LOAD JSON’ command we can still get JSON data into the graph.

Neo4j: Loading JSON documents with Cypher

Michael shows how to do this from various languages in this blog post and I recently wanted to load a JSON document that I generated from Chicago crime types. This is a snippet of the JSON document: We want to create the following graph structure from this document: We can then connect the crimes to the appropriate sub category and write aggregation queries that drill down from the category.

To do this we’re going to have to pass the JSON document to Neo4j via its HTTP API rather than through the browser. Python is my current goto language so I’m going to use py2neo to load the data in. Let’s start by writing a simple query which passes our JSON document in and gets it straight back. It’s a bit ugly but we can see that everything’s there! Now we can create a node for each of those categories.

0415 - Introduction à Neo4j. 201301 - Focus Neo4j. Importing CSV Data into Neo4j. Arrow Tool.