save and restore database state

27 views
Skip to first unread message

Jens Weber

unread,
May 18, 2016, 12:41:34 AM5/18/16
to Neo4j
Is there a way to save and restore neo4j graph database states (other than by using transactions)? Of course, I know that there is a backup mechanism, but I am looking for something faster, something that can be used programmatically. 

Flat nested transactions (as provided by neo4j) do not help in my use case. I am trying to implement a kind of "undo" mechanism that should be able to undo several transactions (not only one).

Thanks for any advice.

Jens

Michael Hunger

unread,
May 18, 2016, 12:51:43 AM5/18/16
to ne...@googlegroups.com
What's your use-case?

Michael
> --
> You received this message because you are subscribed to the Google Groups "Neo4j" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to neo4j+un...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

Jens Weber

unread,
May 18, 2016, 5:05:09 PM5/18/16
to Neo4j
I have been developing a rule-based graph transformation engine on top of Neo4J (Grape). 
Think of it as a declarative, rule-based language for defining and executing sub-graph replacements. 

With the rule-based engine you can define and solve certain "search" problems, based on a "forward-chaining" of graph replacement rules. Backtracking is needed for this mechanism. The backtracking mechanism needs  the ability to "reset" the graph database state to previous states. I currently have a version of it implemented that uses neo4j flat (nested) transactions, but it is slow, since every backtracking point resets the entire database to its original graph and then "redos" all transformations up to the point where the backtracking happened. It would be much faster to use some "save and restore" mechanism - if that was available in Neo4J at all.

Here is the link to the open source project. https://github.com/jenshweber/grape

Thanks
Jens
Reply all
Reply to author
Forward
0 new messages