0

我在 Neo4j(1.4.7)的数据库(版本 4.2.1)中导入了 500k 节点和 1M 关系,没有任何问题。

此外,我已经安装了插件 APOC (4.2.0.0) 和 Graph Data Science Library (1.4.1),没有任何错误。

我能够检查 Neo4j 浏览器中的所有节点和关系,但是当我尝试使用 GDSL 时出现错误,我必须在我的 neo4j.conf 中添加以下行:

dbms.security.procedures.unrestricted=,jwt.security.*,gds.*,apoc.*

我将该行添加到配置中,但仍然出现错误。

所以我试图找出错误发生的时间。

  • 当我将所有节点添加到我的数据库中时,GDSL 工作正常。
  • 当我逐步添加我的关系时,仅在添加特定关系后才会出现错误。

当我跳过这种关系时,它在 Neo4j 浏览器和 GDSL 中工作。但是当我添加这种关系时,它只能在 Neo4j 浏览器中工作。

关系如下所示:

match(p:packages)
with p
match(c:commits)
where p.projectid = c.projectid
create(p)-[:commits]->(c)

没什么特别的。

我的提交节点:

Data columns (total 3 columns):
 #   Column     Non-Null Count  Dtype
---  ------     --------------  -----
 0   projectid  25622 non-null  int64
 1   counts     25622 non-null  int64
 2   counts2    25622 non-null  int64
dtypes: int64(3)

我的 Packages 节点如下所示:

     #   Column       Non-Null Count  Dtype 
---  ------       --------------  ----- 
 0   packagename  26023 non-null  object
 1   versions     26023 non-null  int64 
 2   projectid    26023 non-null  int64 
 3   ownerid      26023 non-null  int64 
 4   projectname  26023 non-null  object
 5   language     26023 non-null  object

我不是在寻找具体的解决方案,但我不再有任何想法可能是什么错误。

已经尝试了不同的版本。不同的进口等等...

任何人都知道为什么特定关系仅在 Neo4j 浏览器中有效而不在 GDSL 中有效?

谢谢

4

1 回答 1

0

问题是关系的名称已经用于节点。我更改了关系的名称,现在它可以工作了。

似乎 GDSL 也需要不同的节点和关系标签。

于 2021-07-23T16:44:34.210 回答