选择随机节点,neo4j

选择随机节点,neo4j,neo4j,Neo4j,为了使用SKIP和random\u offset从图中选择随机节点,随着random\u offset值的增加,速度会变得非常慢 使用SKIP 有没有其他方法,因为这是完全没有效率的?我通常使用带有WHERE子句的rand()作为概率谓词 MATCH (n) WITH n WHERE rand() < 0.3 // for a 30% chance to include the node 匹配(n) 与n 其中rand()

为了使用
SKIP
random\u offset
从图中选择随机节点,随着
random\u offset
值的增加,速度会变得非常慢

使用
SKIP

有没有其他方法,因为这是完全没有效率的?

我通常使用带有WHERE子句的
rand()
作为概率谓词

MATCH (n)
WITH n
WHERE rand() < 0.3 // for a 30% chance to include the node
匹配(n)
与n
其中rand()<0.3//有30%的几率包含该节点

请参阅我关于采样图的博文:

我遇到的另一种解决方案

开始n=节点(*) 其中n.type='project'和ID(n)%RANDOM\u INT=0
返回n

包含的顺序是否总是相同的,因此使节点“在索引末尾”非常不可能,反之亦然?