Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4j 未知错误(内存不足)_Neo4j_Cypher - Fatal编程技术网

Neo4j 未知错误(内存不足)

Neo4j 未知错误(内存不足),neo4j,cypher,Neo4j,Cypher,社区2.0.1中的以下密码查询超时。不幸的是,我无法用它生成配置文件输出 我正在寻找消除歧义的用户,如果他们已经被复制,并试图找到一个基线,如果这发生在一个特定的用户。但是,看起来Cypher并不是从具有相同apid的两个节点开始,而是首先查询数据库中的所有关系 match (n:LIuser)-[r:CONNECTED]-(), (nnn:LIuser)-[rr:CONNECTED]-() where n.apiid = 'K1J3V8EI9M' and nnn.apiid = '2

社区2.0.1中的以下密码查询超时。不幸的是,我无法用它生成
配置文件
输出

我正在寻找消除歧义的用户,如果他们已经被复制,并试图找到一个基线,如果这发生在一个特定的用户。但是,看起来Cypher并不是从具有相同apid的两个节点开始,而是首先查询数据库中的所有关系

match (n:LIuser)-[r:CONNECTED]-(), (nnn:LIuser)-[rr:CONNECTED]-()
where n.apiid = 'K1J3V8EI9M' 
    and nnn.apiid = '29302231'
return count(distinct r), count(distinct rr)
提前谢谢


编辑:我意识到我错过了这个问题,这完全改变了它的意思。n、 apid和nnn.apid是不同的。我最初键入的是相同的。

您是否尝试在
apid
属性上建立索引


创建索引ON:LIuser(apid)
您正在创建一个交叉产品,这就是问题所在

假设每个用户都有1000个连接查询,然后创建1000 x 1000行需要处理。(通常情况下,100万行不是一个问题)。也许您还应该共享您的设置和
graph.db/messages.log

实际上,如果我理解正确,您需要的是一个分组,它将为重复用户返回2行或更多行及其计数

MATCH (n:LIuser)-[r:CONNECTED]-()
WHERE n.apiid = 'K1J3V8EI9M' 
RETURN n, count(distinct r)
你甚至可以这样做,看看另一边是什么:

MATCH (n:LIuser)-[r:CONNECTED]-(m)
WHERE n.apiid = 'K1J3V8EI9M' 
RETURN n, count(distinct r),collect(m)

伟大的建议@satoru-实际上,该标签/属性上已经有一个索引。您可以通过转到控制台选项卡并在查询前添加配置文件来生成配置文件