WHAT MAKES A GOOD DATAMODEL? — POINT 1: NON-HIERARCHICAL

Murray Callander
2 min readJul 9, 2020

--

WHAT MAKES A GOOD DATAMODEL? — POINT 1: NON-HIERARCHICAL

The problem with hierarchies is they are subjective and only relevant to a certain viewpoint or problem. For example, what is the hierarchy of equipment on an industrial facility? Should it be based on area or on equipment size, or on position in the process?

If my data model is based on one particular hierarchy being right, then it will not work very well for all the alternative views of the world. It will work brilliantly for some use cases and not at all well for others.

Graph databases solve this problem by letting you create a network of objects and relationships. Data can be extracted from a graph as if it were a hierarchy by following certain relationships but it doesn’t have to be stored this way. That means you can model all the different hierarchies at the same time. It’s a bit like Scrabble — the hierarchies intersect each other

Lets take a look at a quick example. Here’s my simple model from the film “Finding Nemo”

Using this model we could extract the following hierarchies:

The great thing about this is that I can add objects and relationships over time as I discover them. Things I have built based on the starting structure will still work, but now more advanced functions can be made.

However, a graph alone will not solve all of the challenges. What if I want to simultaneously represent the following hierarchies:

This is where you also need a Class Library and a pragmatic approach to objects and properties which I’ll talk about in the subsequent blogs.

To find out more:

  • Read the rest of the series
  • To join the conversation join us over on LinkedIn

--

--

Murray Callander
Murray Callander

Written by Murray Callander

Co-Founder & CEO @eigenltd — How can we help industrial companies become more efficient? And how do we make sure we do a great job?

No responses yet