我们有一个Neo4J数据库,它代表了一个具有大约100 K节点和200 K关系的进化过程。节点是代际中的个体,边缘表示父子关系.其主要目标是能够在最后一代中获得一个或多个感兴趣的节点,并探索它们的进化史(粗略地说,“我们是如何到达这里的?”)查找所有祖先的“显而易见”第一个查询不起作用,因为有太多可能的祖先和路径通过该空间:
m
我正在使用rNeo4j开发一个推荐应用程序,并且我在编写一个高效的查询时遇到了一些问题。查询的目的是向用户推荐一项,并规定他们以前没有使用该项。我希望返回项目的名称、路径上的节点(用于可视化推荐),以及一些额外的措施,以便使建议尽可能具有相关性。目前,我正在返回以前使用该项的用户数、推荐路径的长度以及qCount关系属性的总和。ORDER BY pathLength, Strength DESCE
在已知节点与其相关的叶节点之间的路径中,我的目标是为每个节点分配一个级别属性,该属性反映该节点从已知节点(或叶节点--无论我最容易获得的工作)中跳了多少跳。path, length(nodes(path)) as hops foreach (n IN relationships (path) | set n.Le