小编Mic*_*ger的帖子

为什么Neo4j改名为Neo5j?

他们刚刚宣布,他们改名为Neo5j.

我一直认为4j意味着Java.而且,由于Neo4j是用Java和Scala实现的,并且~4j后缀非常流行(在90年代),我从未想到4j和现在的5j实际上是一个版本面额.

在此输入图像描述

但是在数据库圈子中使用该数字+字母版本控制方案似乎很常见,就像Oracle使用9i,11g12c一样.

现在的问题是5j代表什么?文章没有回答.谁能帮我解决这个问题?

neo4j

13
推荐指数
1
解决办法
1085
查看次数

Neo4j遍历性能

我想执行无向遍历来提取通过某种类型的关系连接的所有 id

当我执行以下查询时,它返回值的速度足够快

MATCH path=(s:Node {entry:"a"})-[:RelType*1..10]-(x:Node) 
RETURN collect(distinct ID(x))
Run Code Online (Sandbox Code Playgroud)

然而做

MATCH path=(s:Node {entry:"a"})-[:RelType*]-(x:Node) 
RETURN collect(distinct ID(x))
Run Code Online (Sandbox Code Playgroud)

需要大量的时间。我怀疑通过使用*它来搜索从 s 到 x 的每条路径,但由于我只想要 id,所以这些路径可以被丢弃。我真正想要的是 BFS 或 DFS 搜索来查找 s 中的连接节点。

两个查询返回完全相同的结果,因为没有最短路径大于 5 的元素(仅在测试示例中!)。

performance neo4j cypher

5
推荐指数
1
解决办法
467
查看次数

升级到neo4j 2.1打破了Cypher查询

较新版本的Cypher不再喜欢我的OPTIONAL MATCH子句。对于Cypher 2.1,此查询的正确版本是什么?

Cannot add labels or properties on a node which is already bound (line 1, column 104)
"MATCH (n1:Entity {key:"bloomberg michael"})-[r1:RELATED_TO]-(n2:Entity) 
 WITH n1, r1, n2 
 OPTIONAL MATCH (n2:Entity)-[r2:RELATED_TO]-(n3:Entity) 
 RETURN n1, r1, n2, count(n3), labels(n1), labels(n2) 
 ORDER BY n2.relevance DESC  
 LIMIT 50"
Run Code Online (Sandbox Code Playgroud)

upgrade neo4j cypher

5
推荐指数
1
解决办法
176
查看次数

NEO4j Cypher查询返回不同的值

大家好我是cypher查询的新手,我想限制结果中的重复值

查询是

match (ee:Personal {id:"id"})-[:Friend]->(fr),
 (fr)-[:Friend]->(fr2),
 (fr2)-[:Friend]->(friend:Personal),
 (friend)-[:Works]->(comp:Company) 

where comp.name=~".*name.*" 
and not friend.id="id" 
and not (friend)-[:Friend]-(fr) 
and not (friend)-[:Friend]-(ee) 
and not (fr2)-[:Friend]-(ee) 

optional match (comp)-[:Position]->(pos), 
 (friend)-[:Position]->(pos)  
optional match (friend)-[:Location]->(loc) 

return distinct  friend.name,  comp.name
Run Code Online (Sandbox Code Playgroud)

但我得到重复的值,因为返回statemnt中有多个节点属性.如果我只返回一个属性,那么罚款.但我想要不同的朋友

neo4j cypher

4
推荐指数
1
解决办法
2万
查看次数

Neo4j Merge不使用唯一约束索引

Neo4j版本2.2.4

我使用LOAD CSV导入大量节点和关系.我使用MERGE来获取或创建节点.为了性能,我还为节点属性创建了一个唯一索引.

CREATE CONSTRAINT ON (e:RESSOURCE) assert e.url is unique;

USING PERIODIC COMMIT 10000
LOAD CSV FROM 'file:///Users/x/data.csv' AS line FIELDTERMINATOR '\t'
MERGE (subject:RESSOURCE {url: trim(line[0])})
MERGE (object:RESSOURCE {url: trim(line[1])})
CREATE (subject)-[:EQUIVALENCE]->(object);
Run Code Online (Sandbox Code Playgroud)

问题是导入约1Mio.边缘表现非常糟糕.我分析了导入和单个MERGE查询,我看不到任何使用唯一索引.相反,MATCH查询使用索引.如何在索引中使用MERGE?

neo4j

4
推荐指数
1
解决办法
342
查看次数

我如何消除此 CYPHER 查询中的重复项,该查询返回具有特定标签的所有节点,这些节点按距根的距离排序

START s=node(0) 
MATCH p=s-[*]->n 
WHERE n:label
RETURN id(n), n.property 
ORDER BY length(p) asc
Run Code Online (Sandbox Code Playgroud)

由于有多个到 n 的路径,因此我返回了重复的节点。我怎样才能返回唯一的节点?

neo4j cypher

2
推荐指数
1
解决办法
5769
查看次数

如何在c#neo4jClient中创建一个唯一的节点(如果已经存在则不重复)?

我正在尝试执行以下操作(这在neo4J cypher上很容易.

merge (ee:Person { id: "id1234" })
Run Code Online (Sandbox Code Playgroud)

如何确保下一个创建不会在c#Neo4Jclient中创建另一个节点????

迫切需要这个

client.Cypher.Merge("(user:User {Id: {Id} })")
.onCreate()
.set("user= {newUser}")
.withParams(new { ... } )
.executeWithoutResults();
Run Code Online (Sandbox Code Playgroud)

似乎Merge没有被提升.知道为什么吗?因为即使对象完全相同,它仍然会创建一个新节点.

谢谢,R

c# neo4j neo4jclient

1
推荐指数
1
解决办法
1280
查看次数

连接本地主机失败:7474;连接被拒绝。neo4j-server.properties 文件在哪里?

我正在尝试从 Mac OSx 上的 Rstudio 启动我的图表,通过 devtools 安装了 RNeo4j (对于 R 版本 3.1.2)“startGraph(” http://localhost:7474/db/data/ “)”,我收到了以下内容错误:

“函数错误(类型、消息、asError = TRUE):无法连接到 localhost:7474;连接被拒绝”

看起来是一个错误代码:ERR_CONNECTION_REFUSED 网上搜索,他们建议修改conf/neo4j-server.properties文件。但似乎无法找到文件来纠正它。

r neo4j r-neo4j

1
推荐指数
1
解决办法
2万
查看次数

Neo4j - 不知道如何改进密码查询

我有这个查询返回非常快,0.5秒并返回所有303个预期的记录.注意:"Woka"在这里的意思是"书".

MATCH (p:Publisher)-[r:PUBLISHED]->(w:Woka)<-[s:AUTHORED]-(a:Author),
(l:Language)-[t:USED]->(w:Woka)-[u:INCLUDED]->(b:Bisac) 
WHERE (a.author_name = 'Camus, Albert') 
RETURN w.woka_id as woka_id, p.publisher_name as publisher_name, w.woka_title as woka_title, a.author_name as author_name, l.language_name as language_name, b.bisac_code as bisac_code, b.bisac_value as bisac_value 
ORDER BY woka_id;
Run Code Online (Sandbox Code Playgroud)

我想添加更多信息,例如说明.我在语言和描述以及描述和书籍(Woka)之间创建了描述节点并且创建了关系.下面的查询将所有描述都返回为null,但仅返回60个记录而不是303.这是因为并非所有书籍都有描述.执行时间仍然可以,0.3秒.

MATCH (p:Publisher)-[r:PUBLISHED]->(w:Woka)<-[s:AUTHORED]-(a:Author), 
(l:Language)-[t:USED]->(w:Woka), (b:Bisac)<-[u:INCLUDED]-(w:Woka),
(d:Description)-[v:HAS_DESCRIPTION]-(w) 
WHERE (a.author_name = 'Camus, Albert') 
RETURN w.woka_id as woka_id, p.publisher_name as publisher_name, w.woka_title as woka_title, a.author_name as author_name, l.language_name as language_name, b.bisac_code as bisac_code, b.bisac_value as bisac_value, d.description as description 
ORDER BY woka_id;
Run Code Online (Sandbox Code Playgroud)

但是我知道从结果集中遗漏了一些记录,50和303之间的差异确实有描述.我使用OPTIONAL构建另一个查询,但是这个(如下所示)永远不会返回,永远运行.

MATCH (p:Publisher)-[r:PUBLISHED]->(w:Woka)<-[s:AUTHORED]-(a:Author),
 (l:Language)-[t:USED]->(w:Woka)-[u:INCLUDED]->(b:Bisac) 
OPTIONAL MATCH (d:Description)-[v:HAS_DESCRIPTION]-(w:Woka)-[:AUTHORED]-(a:Author) …
Run Code Online (Sandbox Code Playgroud)

neo4j cypher

1
推荐指数
1
解决办法
92
查看次数

标签 统计

neo4j ×9

cypher ×5

c# ×1

neo4jclient ×1

performance ×1

r ×1

r-neo4j ×1

upgrade ×1