获取高层次关系的性能问题
发布于 6 年前 作者 ctadas 1756 次浏览 来自 问答

我想获取某个节点的5层或以上的关系网络,当时获取时间相当的久,有什么好的优化方法获取这几层关系网络? 目前使用的语法: MATCH (p1)-[r*1…5]-(p2) return *

8 回复

要获取5度以内的所有路径,这是个巨大的结果集啊,无论怎样优化都是很慢的。 你确定需要这么巨大的结果集?

@pangguoming 我就是想获取他的整个关系网络,有什么更好的获取的方法吗?

分页返回吧,没其它办法

@pangguoming 分页返回的意思是,每次获取一部分数据返回再自行拼装是吗? MATCH (p1)-[r*1…5]-(p2) return * skip 0 limit 20000 下次就 return * skip 20001 limit 40000 是这样的写法吗?

对就是这样 用skip 和 limit 配合 来分页

@pangguoming 但是他每次获取的时间是不一样,越往后时间越长,总的加起来甚至还比一次性获取还长 time.png

用profile分析下cypher的瓶颈,加索引。 返回这么大的结果集,没别的办法

回到顶部