Connected Data

graph database

Feb 2014

Editing a list of data is easy. Editing a list of data, where one item can be parent or child of others is quickly getting difficult.

For example, take grouping skills into categories. The skill “Web Development” could be a child of “Software Development”, but also includes children such as HTML, Ruby-on-Rails or jQuery. Starting with a flat list of skills, a simple editor might support re-arranging skills and grouping “skills” into contexts. After some fiddling, I came up with a simple user-interface to do this:

Since the connections between skills and categories is the main value behind the data, we just have created a graph problem. How would we best store our skill graph? The embedded version in JSON looks like:


This is neither easy to read, nor easy to store or to query, unless we would use a graph database. And, as first step, a graph database starts with a model:

(User) -[:knows]-> (Skill) <-[:belongs_to]- (SkillCategory)

Assuming this is our model, we still have a couple of questions: How to actually write the JSON from our editor to the skill graph? I think I want to explore GrapheneDB - but I surely would need to integrate the service via some Rubygems, such as Neo4j.rb or Neography.

Leave me feedback

comments powered by Disqus