There are many ways to simulate time on a chart. One way is to add a timestamp or even the start / end time of the period in which the relationship was valid. Thus, you can request a graph to return the subgraphs or paths that were valid at a given time.
Ian Robinson (one of the authors of the book "Graph Databases") wrote a very good blog post on this topic: http://iansrobinson.com/2014/05/13/time-based-versioned-graphs/
As for performance, itβs true that access to relationships is a bit more expensive than querying only by type of relationship, but you probably need to focus on yourself with your own data set, so I would suggest starting with the simplest model that works for you, and then optimizes performance iteratively, if necessary.
Axel morgner
source share