Skip to content Skip to sidebar Skip to footer

Python Networkx And Persistence (perhaps In Neo4j)

I have an application that creates many thousands of graphs in memory per second. I wish to find a way to persist these for subsequent querying. They aren't particularly large (per

Solution 1:

Networkx has several serialization method.

In your case, I would choose graphml serialization :

http://networkx.github.io/documentation/latest/reference/readwrite.graphml.html

It's quite simple to use :

import networkx as nx
nx.write_graphml('/path/to/file')

To load it in Neo4j, provided you have Neo4j<2.0, you could use Tinkerpop Gremlin to load your graphml dump in Neo4J

g.loadGraphML('/path/to/file')

The Tinkerpop are quite useful - not only for serialization/deserialization.

It will allow you to use different graph database with a commion "dialect" (provided they have a "Blueprint" driver which most of them do)

Post a Comment for "Python Networkx And Persistence (perhaps In Neo4j)"