Moved from GitHub dgraph/4770
Posted by ChStark:
What you wanted to do
Modeling some entities as edges
Sometimes when modeling a domain on a graph database makes more sense that some entities are modeled as edges and not nodes, lets say the typical case of airports and flights, flights make more sense like edges since is connecting 2 node entities (airports) and the information they need is primitive like start times and end times, etc
Then if there is a need to include some extra information or pointers to another nodes, let’s say pilots, a whole refactor/export is needed.
What you actually did
Create a new type of node and refactor/export all the information just because I need to point one single attribute to a node
Why that wasn’t great, with examples
Its suppose that graph database should be flexible for schema evolution and changes, but this is not the case.
Any external references to support your case
If you go to ArangoDb’s docs you can see the make a clear distinction of this concept
And if you have the above distinction you can’t change easily between edges -> nodes.