图数据集:PostgreSQL还是Neo4j?

问题描述 投票:1回答:1

我几乎是一个初学者,并且个人项目决定映射一个相对简单的数据集来描述一些互联网连接。我知道一点SQL并且曾在Postgres工作过。但我也很关心像Neo4j这样的Graph数据库。

数据集由3个表组成: A - (节点) nodeID:i1 i2 ... in N33 91.6.6 44.55 99.32.1

B - (链接) linkID N1:N1:i2 ... Nm:im link99 N33:5.32.4 N14:11.49.66

C - (节点属性) nodeID国家区域城市纬度经度 N54:CH WF Lausanne 19.3267 34.8167

作为附加信息,我可能会补充说这些数据具有空间组件,我想提出一个可视化,将其考虑在内(即根据纬度/经度位置映射节点/链接)。 这对我来说至关重要。 我知道Gephi有一个geo-plugin,但我也知道它需要一个精确的数据结构,目前与我的不同,即:

链接: 来源|目标 1 | 2 1 | 43 1 | 27 节点: nodeId | attribute1 | attribute2 ... 1洛桑CH

因此,从广义上讲,我的问题是:导入和查询/可视化数据的最佳选择是什么?

  • 我应该坚持使用PostgreSQL吗? 但是,如何导入和管理表A和B(具有不同列数)的数据? 像多对多关系问题那样处理它? 我应该导入具有最大列数的表并将其余的值视为空值吗?
  • 我应该事先重新塑造数据吗?从而使它们更类似于Gephi数据结构(源节点跨越多行而只有另一列:目标列)
  • 我应该尝试Neo4j的方式吗?我愿意尝试它,从我听到它非常整洁,虽然我是一个初学者,不知道它是否适合我的技能组合。此外,这个数据集可能有点过分吗?

提前感谢大家的答案,对于这篇长篇文章感到抱歉。

postgresql graph neo4j geospatial
1个回答
3
投票

我认为很多都取决于你想如何查询数据。我不熟悉Gephi在空间方面的功能,但Neo4j直接插件可以进行空间查询:

https://github.com/neo4j-contrib/spatial

但是,通常,该部分与Neo4j的遍历查询能力垂直。对于空间查询,您通常会按区域缩小一组节点。然后,您可以选择浏览节点之间的链接。

© www.soinside.com 2019 - 2024. All rights reserved.