Ho una grande rete memorizzata in Neo4j. Basato su un particolare nodo root, voglio estrarre un sottografo attorno a quel nodo e memorizzarlo da qualche altra parte. Quindi, quello di cui ho bisogno è l'insieme di nodi e spigoli che corrispondono ai miei criteri di filtro.Estrarre il sottografo in neo4j
Afaik non è disponibile una soluzione pronta per l'uso. C'è un graph matching component available, ma funziona solo per le partite perfette. L'API Neo4j si definisce solo graph traversal che posso utilizzare per definire quali nodi/bordi devono essere visitati:
Traverser exp = Traversal
.description()
.breadthFirst()
.evaluator(Evaluators.toDepth(2))
.traverse(root);
Ora, posso aggiungere tutti i nodi/bordi ai set per tutti i percorsi, ma questo è molto inefficiente. Come lo faresti? Grazie!
EDIT Avrebbe senso aggiungere l'ultimo nodo e l'ultima relazione di ogni attraversamento al sottografo?