Hello, I've sent a message here earlier this year regarding finding subgraphs 
inside a graph. I've got nice answers, but I didn't have the time then to 
implement the ideas. Now, having a little bit more time, I have been able to 
play with neo4j.

I've been told to use the graph-matching component, it seems very nice, but I'm 
having trouble using it to solve my problem. I'll describe what I need right 
now:

I have a graph which has different types of nodes and edges. I see that there 
is a RelationshipType, so I've created my types using it. However, I don't see 
a node type. So the types of nodes are described with a property called "type". 
Both relationships and nodes may have different attributes describing that 
relation and node.

My user will give me a graph with a few properties filled in and I'll have to 
find that subgraph in the bigger graph I have stored. Example, the user will 
gives me something like:

Node[type="Person"] --[LivesIn]--> Node[type="Street", name="Baker Street"]

So I would have to match every person living in baker street. All two nodes and 
relationship should be returned with all their properties.

In order to use the graph-matching component I think I need an initial node. So 
I was thinking in using index-util component to index all those types and 
properties. Then, for the search part, I'd fill in the properties of each node 
or connection, figure out which is the smallest set of nodes to start from and 
begin the matching from there.

I think that would work, but is that the best way to do it? Would that scale 
well for a graph with 2 millions of nodes? I couldn't find much documentation 
on neo's design. Perhaps I didn't look hard enough. Could someone point me to a 
good document on that? Perhaps I'd need to implement something myself or read 
up on some theory. Any pointers will be appreciated.


      
_______________________________________________
Neo mailing list
[email protected]
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to