spring数据neo4j查询结果不一致

时间:2015-10-05 14:28:15

标签: neo4j spring-data-neo4j

我正在尝试使用neo4j构建推荐引擎,并使用spring-data-neo4j作为持久层。我发现spring数据执行的cypher查询给出了结果,但是对于重复的对象,在具有相同数据集的neo4j浏览器上执行的相同查询会产生预期的结果。

这是执行的查询(我通过启用调试得到了这个) 匹配(你:用户) - [r:RATED] - (m:电影) - [:HAS_MOVIE] - (g:类型) - [:HAS_MOVIE] - (重新:电影)其中u.login =“mickey”和r .stars> = 4通过reco.stars desc SKIP 0 LIMIT 21

返回重新排序

我知道很多取决于我的数据等。但是因为我在neo4j浏览器和spring-data-neo4j上看到相同查询的不同结果,我首先怀疑是spring-data。

有没有其他人看过这种行为,有没有其他方法我可以确认spring-data-neo4j返回不正确的结果?

感谢

1 个答案:

答案 0 :(得分:1)

您的问题需要对您要实现的目标进行更多澄清。

但是,有些事情可以检查:

1)Neo4j浏览器具有"自动完成功能"功能。此功能自动获取其他数据以构建外观漂亮的图形 如何禁用:

  • 在浏览器中运行任何查询
  • 在结果窗格的右下角切换按钮

重新运行查询并检查您收到的输出结果。另外 - 检查表格数据的外观。也许表格表示中存在实际重复?

2)向Cypher REST端点发出手动请求并探索JSON输出。那里是否有重复的结果?

可以使用curl或httpie从命令行执行手动请求。

SDN使用JSON REST API,因此,如果原始JSON输出中存在重复 - 那么复制也应该在SDN结果中。

3)验证您的SDN4设置。没有什么特别的,只是为了确保代码中没有任何故障。