查询跟某一节点相关的所有关联节点及边(求大神帮忙)
发布于 7 年前 作者 804134458 14030 次浏览 来自 问答

我用的数据来源是:play movies 中的数据,总共节点数只有将近200个 查询语句是 match(n:Person{name:‘Tom Hanks’})-[r*]-(m) return n,r,m 用这种查法是为了匹配SpringData中的数据格式 用web页面查找基本就是每次直接挂掉 我设置max内存是4096m 1528280385(1).png 用shell查的话就是跑一会就报GC错误了。 请问一下,是我的这种用法就不对吗?但是如果对于200个节点来说的话,我查找所有跟他有关的节点及边应该不至于这样啊 还是说我的查询语句有问题,应该修改?麻烦大神不吝赐教

6 回复

这个结果集,每层遍历都构成一个笛卡尔乘机级别的数据量,因为你这是匹配 到所有节点的 所有长度的路径,应该是 额。。。。海量数据啊

指定下 路径深度-如指定深度为3 -[r*。。3]->

@pangguoming 麻烦问您一下,那有没有可能以某一个节点为中心,找到所有可以通过任意路径到达该点的写法呢

返回所有路径,这个结果集太大了,确实有这种需求吗

@pangguoming 需求理论上应该是深度一定要达到,自顶向下贯穿。 就假设说是一个关系族谱,需要找到所有和某一个中心节点有任何血缘关系的所有关系。 最开始我写的那个cypher确实有点问题,后来我考虑了一下,确实应该在关系上加上类型,然后再加上方向。将一个所有的查询拆分成他指向的和指向他的。 然后再根据获得所有的叶子节点去循环查询另外的一种关系,至少这样可以保证不会出现查询卡死的情况。 总之十分感谢您的回答啊

您查询属性值应该怎么写呀

回到顶部