0

此处的文档https://neo4j.com/docs/graph-data-science/1.1/algorithms/bfs/#algorithms-bfs描述了可调用的“gds.alpha.bfs.stream”。

为了调用它,据我所知,它需要在嵌入式数据库中注册。类似的东西

Procedures proceduresService = ((GraphDatabaseAPI) graphDb).getDependencyResolver().resolveDependency(Procedures.class);
proceduresService.registerProcedure(AllShortestPathsProc.class, true);

否则 neo4j 会抛出一个异常,通知我们我们的错误行为:

没有gds.alpha.bfs.stream为此数据库实例注册的名称的过程。请确保您正确拼写了过程名称并且该过程已正确部署。

但是,我似乎找不到任何要包含在 BFS 或 BreadthFirstSearch 中的 *Proc.class。

该文档不正确吗?我需要一个不同的 jar 来使用描述的 bfs 算法吗?

OT:我链接到旧版本的文档,因为它支持遍历关系的 maxCost 条件。较新的版本缺少此功能(实际上似乎也没有BFSProc)

4

1 回答 1

0

所需的过程方便地称为“TraverseProc”,并允许使用 BFS 和 DFS。

该文件也不包含可调用文件的名称。通过搜索我所有的 neo4j 依赖项发现了它

find . -name "*.jar" -exec zipgrep "gds.alpha" '{}' \;

(来自如何在 JAR 文件中搜索字符串

于 2021-06-04T20:45:50.737 回答