使用 neo4j 优化计数搜索
Optimizing in-count searches with neo4j
我正在构建一个类似图的社交网络,我们希望在其中定期查找传入计数大于 2 的所有节点。例如
A->B
C->B
C->A
D->A
E->A
应该return节点A.
我是 neo4j 的新手,对于他们是否会搜索所有可用行仍然有些困惑。是否有可用于优化这些查询的索引?我的搜索查询是这样的
EXPLAIN MATCH ()-[r:F]->(b:Person)
WITH b, count(r) AS count
WHERE count > 1
RETURN collect(b.username)
谢谢
Neo4j 有一个特殊的关系计数存储,用于保存节点拥有的关系数。它允许获得关系的计数而无需扩展它们。
您可以使用 size()
函数访问关系计数存储值。
MATCH (b:Person)
WITH b, size((b)<--()) as size
WHERE size > 2
RETURN collect(b.username)
我正在构建一个类似图的社交网络,我们希望在其中定期查找传入计数大于 2 的所有节点。例如
A->B
C->B
C->A
D->A
E->A
应该return节点A.
我是 neo4j 的新手,对于他们是否会搜索所有可用行仍然有些困惑。是否有可用于优化这些查询的索引?我的搜索查询是这样的
EXPLAIN MATCH ()-[r:F]->(b:Person)
WITH b, count(r) AS count
WHERE count > 1
RETURN collect(b.username)
谢谢
Neo4j 有一个特殊的关系计数存储,用于保存节点拥有的关系数。它允许获得关系的计数而无需扩展它们。
您可以使用 size()
函数访问关系计数存储值。
MATCH (b:Person)
WITH b, size((b)<--()) as size
WHERE size > 2
RETURN collect(b.username)