我们目前正在评估neo4j作为我们引擎的一部分。 可悲的是,我们的密码查询结果令人无法接受。
所以我们正在考虑从密码转向java。 创建一个解决了以下问题的java插件是否可行: 我们的neo4j数据库映射了以下节点类型之间的关系:
我们的neo4j数据库中的每个关系都有一定的成本(例如,产品和Tag_1之间的连接可能比同一产品和Tag_2之间的连接成本更低,这比产品和产品之间的连接成本更低。某些用户)。
我们希望找到与特定来源产品最相似的N(10?20?100?)产品 相似性不仅由两个节点之间路径的短小来定义,而且还由源和目的地之间的路径数量来定义。
使用cypher会导致性能极差,我们开始质疑Neo4J是否是解决此问题的正确工具。
这里所有Neo4J专家的问题:
在Java中创建一个小路径查找算法是否可行,它还计算两个节点之间的路径计数?
我们需要的响应时间小于100毫秒(最大!)。
我们的neo4j服务器目前看起来像这样:
提前感谢您的想法。
答案 0 :(得分:1)
看看this extension。您可以使用GraphAware Framework和Algorithms扩展,或者只查看repo中的代码并编写您自己的非托管扩展。
我们在repo中为与您有类似要求的客户端编写了寻路算法 - 将查询时间从几秒缩短到毫秒。