Je voudrais parcourir mon graphe en utilisant l'API traversée neo4j, mais je dois être capable de spécifier quel type de relation utiliser à chaque étape, et le type de relation à utiliser doit être une fonction du noeud courant. Y a-t-il un moyen de faire cela?Comment puis-je spécifier quel type de relation utiliser en tant que fonction du nœud courant à chaque étape d'une traversée avec neo4j?
3
A
Répondre
1
Dans l'API Traverser actuelle, vous ne pouvez pas choisir la relation exacte à parcourir. Au lieu de cela, vous prenez l'approche plus granulaire de node.getRelationships(), choisissez celle que vous voulez et l'onde de fin dessus, et ainsi de suite. L'algo devient un peu plus verbeux que Traverser, mais vous donne plus de flexibilité. Pour une approche de bricolage, Gremlin supporte la notion de fonctions pour choisir les arêtes à traverser, voir here. Cela sera bientôt implémenté en utilisant Blueprint Pipes pour les performances au niveau Java.
HTH
/Peter Neubauer
Questions connexes
- 1. Comment puis-je stocker ce type de graphique dans neo4j pour une traversée rapide?
- 2. Quel type de tableau est Foo() en tant que Foo()?
- 3. Me en tant que type d'enfant en fonction générale
- 4. Utilisation du type passé en tant que modèle en C++
- 5. Neo4j vs OpenLink Virtuoso
- 6. Traversée de nœud en Xml en utilisant MSXML
- 7. Comment accepter n'importe quel type de nombre dans une fonction en tant qu'argument en C#?
- 8. Comment puis-je utiliser un type avec des arguments génériques en tant que contrainte?
- 9. Déléguer en tant que fonction
- 10. Comment accéder et utiliser les paramètres de type générique en tant que type normal en C#?
- 11. CSS de traversée avec cfinput type = "datefield"
- 12. Windows Server 2008 en tant que machine de développement - étape par étape
- 13. Démarrage d'exe en tant que domaine d'utilisateur courant dans Vista
- 14. Comment obtenir que GDB fasse une 'liste' après chaque étape?
- 15. Comment appeler une fonction qui a une carte avec un type générique en tant que paramètre?
- 16. Quel type de données utiliser?
- 17. Quel type de collection utiliser?
- 18. Comment utiliser les noeuds BatchInserted de Neo4j après leur création et leur indexation?
- 19. Traversée d'un arbre pour trouver un nœud
- 20. Comment utiliser DatePickerDialog en tant que préférence
- 21. Neo4j Documentation
- 22. Appel du constructeur en tant que fonction dans C#
- 23. Comment écrire cette fonction en tant que fonction pL/pgSQl?
- 24. OpenMPI: Tous les nœuds s'exécutent en tant que nœud 0
- 25. Utiliser WordPress en tant que CMS
- 26. Comment utiliser Brail en tant que moteur de modélisation de type universel (comme NVelocity)?
- 27. Erreur avec l'aide d'une fonction en tant que paramètre de modèle non de type
- 28. Quel chemin dois-je passer en tant que paramètre AssemblyPath à la fonction Publish.GacRemove?
- 29. Traversée de noeuds Networkx
- 30. envoyer IQueryable en tant que paramètre à la fonction
Salut merci pour votre réponse. Je pourrais prendre l'approche granulaire mais j'ai lu que la méthode de traversée node.getRelationships() est supposée être plus lente que l'utilisation des traversées intégrées. – James
@James: L'approche granulaire ne devrait pas être plus lente que les traversées intégrées, sauf si vous vous trompez. J'aimerais vraiment savoir où tu lis ça? BTW, un nouveau cadre de traversier est en cours, qui peut faire le genre de traversée que vous décrivez. – nawroth