我正在尝试使用neo4j构建一个推荐引擎,并使用spring-data-neo4j作为持久层。我发现spring数据执行的cypher查询会给出结果,但是对于重复的对象,使用相同的数据集在neo4j浏览器上执行的相同查询会产生预期的结果。
下面是执行的查询(我通过启用调试获得)匹配(u:User)-[r:RATED]-(m:Movie)-[:HAS\u Movie]-(g:Genre)-[:HAS\u Movie]-(reco:Movie),其中u.login=“mickey”和r.stars
我知道很多取决于我的数据等。但是由于我在neo4j浏览器和sping-data-neo4j上看到了相同查询的不同结果,我的第一个怀疑是sping-data。
还有其他人看到过这种行为吗,还有其他方法可以确认sping-data-neo4j返回的结果不正确吗?
谢谢
你的问题需要对你试图实现的目标做更多的澄清。
但是,您可以检查一些东西:
1)Neo4j浏览器具有自动完成功能。此函数自动获取额外的数据来构建漂亮的图形。
如何禁用:
在重新运行查询并检查作为输出接收的内容之后。另外-检查表格数据的外观。也许在表格中有实际的重复?
2) 手动请求Cypher RESTendpoint并探索JSON输出。有重复的结果吗?
可以使用curl或httpie从命令行执行手动请求。
SDN使用JSON REST API,所以,如果原始JSON输出中存在重复,那么SDN结果中也应该存在重复。
3)验证您的SDN4设置。没有什么特别的,只是为了确保你的代码中没有故障。
我试图编写一个返回大量数据(200个节点)的查询。节点非常简单: 我最初使用Spring Data Neo4j模板接口,但在返回大约100个节点后发现它非常慢。 所以,我的问题是:是否有一种方法可以提供标签作为Cypher查询的一部分,以防止需要再次查询每个节点?或者,除此之外,是否有一种方法可以为SDN提供一个包含标签和属性的并将其转换为POJO? 注意:我意识到SDN团队正在未来的版本中完全使
我是neo4j spring数据的新手,我尝试执行的查询不是在我的spring boot应用程序上工作,而是在neo4j web界面上工作。 我在数据库上有3个节点:“Oracle”、“Java”和“Cloud”我正在尝试运行的查询: 因此,使用neo4j web界面,如果我输入“CL”,它将返回“Oracle”和“Cloud”,这是正确的。 使用spring数据,我得到了所有3个结果,这是错误的
我正在尝试查找一个查询唯一的名称列表,并排除两个查询结果之间的共同名称。例如,我想要学生A、B和C所选课程的名称,并从该列表中排除学生D和E所选的课程。在这个问题的答案的帮助下(Neo4j Cypher:从结果中排除某些节点),我尝试了这个密码代码,它是有效的,但我得到的结果是节点。我希望它是一个名称列表,而不是节点。 非常感谢。
我的数据库中只有大约16000个节点,当我匹配n返回n时,我从来没有得到任何图回来,任何原因或如何修复?
在我的JpaRepository中,我有一个如下的问题 我的dto就像下面一样; 最后,我的TicketStatus枚举是; 当我编译项目时,我得到如下错误;
我在继承和ElasticsearchRepository方面有一些问题。我的代码(简短版本):实体: 存储库: 我的问题是:我能够将数据放入弹性搜索中,但无法检索它们。如果我做一个存储库。findall()它可以工作。如果我做一个存储库。findWithUri(uri)它不工作(空结果)findByUri的分析异常 我试图搜索示例:https://github.com/spring-project